- Refactor Performance TCs due to changes in Hyperthreading and RXQ allocations.
- Simplify the structure of suite to avoid large refactors in future.
Change-Id: Ifb1b9719391f26745f075a900bd9fb39b6cb809c
Signed-off-by: Peter Mikus <pmikus@cisco.com>
| | ... | routing for IPv6 with defined behaviour function and configure IPv6
| | ... | routes on both DUT nodes.
| | ...
+| | ... | *Note:*
+| | ... | KW uses test variable ${rxq_count_int} set by KW Add worker threads
+| | ... | and rxqueues to all DUTs
+| | ...
| | ${tg1_if1_mac}= | Get Interface MAC | ${tg} | ${tg_if1}
| | ${tg1_if2_mac}= | Get Interface MAC | ${tg} | ${tg_if2}
| | ${dut1_if2_mac}= | Get Interface MAC | ${dut1} | ${dut1_if2}
| | ${sock1}= | Set Variable | memif-DUT1_VNF
| | ${sock2}= | Set Variable | memif-DUT2_VNF
| | Set up memif interfaces on DUT node | ${dut1} | ${sock1} | ${sock1}
-| | ... | ${1} | dut1-memif-1-if1 | dut1-memif-1-if2 | ${rxq} | ${rxq}
+| | ... | ${1} | dut1-memif-1-if1 | dut1-memif-1-if2 | ${rxq_count_int}
+| | ... | ${rxq_count_int}
| | Set up memif interfaces on DUT node | ${dut2} | ${sock2} | ${sock2}
-| | ... | ${1} | dut2-memif-1-if1 | dut2-memif-1-if2 | ${rxq} | ${rxq}
+| | ... | ${1} | dut2-memif-1-if1 | dut2-memif-1-if2 | ${rxq_count_int}
+| | ... | ${rxq_count_int}
| | ${duts}= | Get Matches | ${nodes} | DUT*
| | :FOR | ${dut} | IN | @{duts}
| | | Show Memif | ${nodes['${dut}']}
| | Configure deterministic mode for NAT44
| | ... | ${dut1} | 20.0.0.0 | 18 | 200.0.0.0 | 30
-| Initialize L2 xconnect for '${nr}' memif pairs and '${rxq}' rxqueues in 3-node circular topology
+| Initialize L2 xconnect for '${nr}' memif pairs in 3-node circular topology
| | [Documentation]
| | ... | Create pairs of Memif interfaces on all defined VPP nodes. Cross
| | ... | connect each Memif interface with one physical interface or virtual
| | ... | Socket paths for Memif are defined in following format:
| | ... | - /tmp/memif-DUT1_VNF${number}-${sid}
| | ...
+| | ... | KW uses test variable ${rxq_count_int} set by KW Add worker threads
+| | ... | and rxqueues to all DUTs
+| | ...
| | ... | *Example:*
| | ...
-| | ... | \| Initialize L2 xconnect for 1 Memif in 3-node circular topology \|
+| | ... | \| Initialize L2 xconnect for 1 memif pairs in 3-node circular \
+| | ... | topology \|
| | ...
| | Set Interface State | ${dut1} | ${dut1_if1} | up
| | Set Interface State | ${dut1} | ${dut1_if2} | up
| | | ${prev_index}= | Evaluate | ${number}-1
| | | Set up memif interfaces on DUT node | ${dut1}
| | | ... | ${sock1} | ${sock2} | ${number} | dut1-memif-${number}-if1
-| | | ... | dut1-memif-${number}-if2 | ${rxq} | ${rxq}
+| | | ... | dut1-memif-${number}-if2 | ${rxq_count_int} | ${rxq_count_int}
| | | ${dut1_xconnect_if1}= | Set Variable If | ${number}==1 | ${dut1_if1}
| | | ... | ${dut1-memif-${prev_index}-if2}
| | | Configure L2XC | ${dut1} | ${dut1_xconnect_if1}
| | | ${sock2}= | Set Variable | memif-DUT2_VNF
| | | Set up memif interfaces on DUT node | ${dut2}
| | | ... | ${sock1} | ${sock2} | ${number} | dut2-memif-${number}-if1
-| | | ... | dut2-memif-${number}-if2 | ${rxq} | ${rxq}
+| | | ... | dut2-memif-${number}-if2 | ${rxq_count_int} | ${rxq_count_int}
| | | ${dut2_xconnect_if1}= | Set Variable If | ${number}==1 | ${dut2_if1}
| | | ... | ${dut2-memif-${prev_index}-if2}
| | | Configure L2XC | ${dut2} | ${dut2_xconnect_if1}
| | All Vpp Interfaces Ready Wait | ${nodes}
| | Show Memif on all DUTs | ${nodes}
-| Initialize L2 Bridge Domain for '${nr}' memif pairs and '${rxq}' rxqueues in 3-node circular topology
+| Initialize L2 Bridge Domain for '${nr}' memif pairs in 3-node circular topology
| | [Documentation]
| | ... | Create pairs of Memif interfaces on all defined VPP nodes. Put each
| | ... | Memif interface to separate L2 bridge domain with one physical or
| | | ${sock2}= | Set Variable | memif-DUT1_VNF
| | | Set up memif interfaces on DUT node | ${dut1}
| | | ... | ${sock1} | ${sock2} | ${number} | dut1-memif-${number}-if1
-| | | ... | dut1-memif-${number}-if2 | ${rxq} | ${rxq}
+| | | ... | dut1-memif-${number}-if2 | ${rxq_count_int} | ${rxq_count_int}
| | | ${bd_id2}= | Evaluate | ${number}+1
| | | Add interface to bridge domain | ${dut1}
| | | ... | ${dut1-memif-${number}-if1} | ${number}
| | | ${sock2}= | Set Variable | memif-DUT2_VNF
| | | Set up memif interfaces on DUT node | ${dut2}
| | | ... | ${sock1} | ${sock2} | ${number} | dut2-memif-${number}-if1
-| | | ... | dut2-memif-${number}-if2 | ${rxq} | ${rxq}
+| | | ... | dut2-memif-${number}-if2 | ${rxq_count_int} | ${rxq_count_int}
| | | Add interface to bridge domain | ${dut2}
| | | ... | ${dut2-memif-${number}-if1} | ${number}
| | | Add interface to bridge domain | ${dut2}
| | ... | connect Memif interface with one physical interface.
| | ...
| | ... | *Arguments:*
-| | ... | - ${rxq} - Number of Memif RX queues. Type: integer
| | ... | - ${number} - Memif ID. Type: integer
| | ...
| | ... | *Note:*
| | ... | Socket paths for Memif are defined in following format:
| | ... | - /tmp/memif-DUT1_VNF${number}-${sid}
| | ...
+| | ... | KW uses test variable ${rxq_count_int} set by KW Add worker threads
+| | ... | and rxqueues to all DUTs
+| | ...
| | ... | *Example:*
| | ...
| | ... | \| Initialize L2 xconnect for single memif in 3-node circular \
-| | ... | topology \| 1 \| 1 \|
+| | ... | topology \| 1 \|
| | ...
-| | [Arguments] | ${rxq}=${1} | ${number}=${1}
+| | [Arguments] | ${number}=${1}
| | ${sock}= | Set Variable | memif-DUT1_VNF
| | Set up single memif interface on DUT node | ${dut1} | ${sock}
-| | ... | ${number} | dut1-memif-${number}-if1 | ${rxq} | ${rxq}
+| | ... | ${number} | dut1-memif-${number}-if1 | ${rxq_count_int}
+| | ... | ${rxq_count_int}
| | Configure L2XC | ${dut1} | ${dut1_if1} | ${dut1-memif-${number}-if1}
| | ${sock}= | Set Variable | memif-DUT2_VNF
| | Set up single memif interface on DUT node | ${dut2} | ${sock}
-| | ... | ${number} | dut2-memif-${number}-if1 | ${rxq} | ${rxq}
+| | ... | ${number} | dut2-memif-${number}-if1 | ${rxq_count_int}
+| | ... | ${rxq_count_int}
| | Configure L2XC | ${dut2} | ${dut2_if2} | ${dut2-memif-${number}-if1}
| | All Vpp Interfaces Ready Wait | ${nodes}
| | Show Memif on all DUTs | ${nodes}
| | ... | interface to separate L2 bridge domain with one physical interface.
| | ...
| | ... | *Arguments:*
-| | ... | - ${rxq} - Number of Memif RX queues. Type: integer
| | ... | - ${number} - Memif ID. Type: integer
| | ...
| | ... | *Note:*
| | ... | Socket paths for Memif are defined in following format:
| | ... | - /tmp/memif-DUT1_VNF${number}-${sid}
| | ...
+| | ... | KW uses test variable ${rxq_count_int} set by KW Add worker threads
+| | ... | and rxqueues to all DUTs
+| | ...
| | ... | *Example:*
| | ...
| | ... | \| Initialize L2 Bridge Domain for single memif in 3-node circular \
-| | ... | topology \| 1 \| 1 \|
+| | ... | topology \| 1 \|
| | ...
-| | [Arguments] | ${rxq}=${1} | ${number}=${1}
+| | [Arguments] | ${number}=${1}
| | ${sock}= | Set Variable | memif-DUT1_VNF
| | Set up single memif interface on DUT node | ${dut1} | ${sock}
-| | ... | ${number} | dut1-memif-${number}-if1 | ${rxq} | ${rxq}
+| | ... | ${number} | dut1-memif-${number}-if1 | ${rxq_count_int}
+| | ... | ${rxq_count_int}
| | Add interface to bridge domain | ${dut1} | ${dut1_if1} | ${number}
| | Add interface to bridge domain | ${dut1} | ${dut1-memif-${number}-if1}
| | ... | ${number}
| | ${sock}= | Set Variable | memif-DUT2_VNF
| | Set up single memif interface on DUT node | ${dut2} | ${sock}
-| | ... | ${number} | dut2-memif-${number}-if1 | ${rxq} | ${rxq}
+| | ... | ${number} | dut2-memif-${number}-if1 | ${rxq_count_int}
+| | ... | ${rxq_count_int}
| | Add interface to bridge domain | ${dut2} | ${dut2_if2} | ${number}
| | Add interface to bridge domain | ${dut2} | ${dut2-memif-${number}-if1}
| | ... | ${number}
| | ... | mTnC, where m=logical_core_count and n=physical_core_count.
| | ...
| | ... | *Arguments:*
-| | ... | - cpu_cnt - Number of physical cores to use. Type: integer
+| | ... | - phy_cores - Number of physical cores to use. Type: integer
| | ... | - rx_queues - Number of RX queues. Type: integer
| | ...
| | ... | *Example:*
| | ...
| | ... | \| Add worker threads and rxqueues to all DUTs \| ${1} \| ${1} \|
| | ...
-| | [Arguments] | ${cpu_cnt} | ${rx_queues}
+| | [Arguments] | ${phy_cores} | ${rx_queues}=${None}
| | ...
-| | ${cpu_count_int} | Convert to Integer | ${cpu_cnt}
-| | ${thr_count_int} | Convert to Integer | ${cpu_cnt}
+| | ${cpu_count_int} | Convert to Integer | ${phy_cores}
+| | ${thr_count_int} | Convert to Integer | ${phy_cores}
| | ${duts}= | Get Matches | ${nodes} | DUT*
| | :FOR | ${dut} | IN | @{duts}
| | | ${numa}= | Get interfaces numa node | ${nodes['${dut}']}
| | | ... | skip_cnt=${1} | cpu_cnt=${1}
| | | ${cpu_wt}= | Cpu list per node str | ${nodes['${dut}']} | ${numa}
| | | ... | skip_cnt=${2} | cpu_cnt=${cpu_count_int} | smt_used=${smt_used}
+| | | ${thr_count_int}= | Run keyword if | ${smt_used}
+| | | ... | Evaluate | int(${cpu_count_int}*2)
+| | | ... | ELSE | Set variable | ${thr_count_int}
+| | | ${rxq_count_int}= | Run keyword if | ${rx_queues}
+| | | ... | Set variable | ${rx_queues}
+| | | ... | ELSE | Evaluate | int(${thr_count_int}/2)
+| | | ${rxq_count_int}= | Run keyword if | ${rxq_count_int} == 0
+| | | ... | Set variable | ${1}
+| | | ... | ELSE | Set variable | ${rxq_count_int}
| | | Run keyword | ${dut}.Add CPU Main Core | ${cpu_main}
| | | Run keyword | ${dut}.Add CPU Corelist Workers | ${cpu_wt}
-| | | Run keyword | ${dut}.Add DPDK Dev Default RXQ | ${rx_queues}
-| | | ${thr_count_int}= | Run keyword if | ${smt_used} |
-| | | ... | Evaluate | int(${cpu_count_int}*2) | ELSE | Set variable
-| | | ... | ${thr_count_int}
+| | | Run keyword | ${dut}.Add DPDK Dev Default RXQ | ${rxq_count_int}
| | | Run keyword if | ${thr_count_int} > 1
| | | ... | Set Tags | MTHREAD | ELSE | Set Tags | STHREAD
| | | Set Tags | ${thr_count_int}T${cpu_count_int}C
-
-# FIXME: Remove the keyword after refactor of suites. Currently kept for
-# backward compatibility only.
-| Add '${m}' worker threads and '${n}' rxqueues in 3-node single-link circular topology
-| | [Documentation] | Setup M worker threads and N rxqueues in vpp startup\
-| | ... | configuration on all DUTs in 3-node single-link topology.
-| | ...
-| | Add worker threads and rxqueues to all DUTs | ${m} | ${n}
+| | Set Test Variable | ${smt_used}
+| | Set Test Variable | ${thr_count_int}
+| | Set Test Variable | ${rxq_count_int}
| Add no multi seg to all DUTs
| | [Documentation] | Add No Multi Seg to VPP startup configuration to all DUTs.
| | [Arguments] | ${count}
| | ${duts}= | Get Matches | ${nodes} | DUT*
| | :FOR | ${dut} | IN | @{duts}
-| | | Run keyword | ${dut}.Add DPDK Cryptodev | ${count}
+| | | ${smt_used}= | Is SMT enabled | ${nodes['${dut}']['cpuinfo']}
+| | | ${thr_count_int}= | Run keyword if | ${smt_used}
+| | | ... | Evaluate | int(${count}*2)
+| | | ... | ELSE | Set variable | ${count}
+| | | Run keyword | ${dut}.Add DPDK Cryptodev | ${thr_count_int}
| Add DPDK SW cryptodev on DUTs in 3-node single-link circular topology
| | [Documentation] | Add required number of SW crypto devices of given type
| | ... | topology \| aesni-mb \| ${2} \|
| | ...
| | [Arguments] | ${sw_pmd_type} | ${count}
+| | ${smt_used}= | Is SMT enabled | ${nodes['DUT1']['cpuinfo']}
+| | ${thr_count_int}= | Run keyword if | ${smt_used}
+| | ... | Evaluate | int(${count}*2)
+| | ... | ELSE | Set variable | ${count}
| | ${socket_id}= | Get Interface Numa Node | ${nodes['DUT1']} | ${dut1_if2}
| | Run keyword | DUT1.Add DPDK SW Cryptodev | ${sw_pmd_type} | ${socket_id}
-| | ... | ${count}
+| | ... | ${thr_count_int}
+| | ${smt_used}= | Is SMT enabled | ${nodes['DUT2']['cpuinfo']}
+| | ${thr_count_int}= | Run keyword if | ${smt_used}
+| | ... | Evaluate | int(${count}*2)
+| | ... | ELSE | Set variable | ${count}
| | ${socket_id}= | Get Interface Numa Node | ${nodes['DUT2']} | ${dut2_if1}
| | Run keyword | DUT2.Add DPDK SW Cryptodev | ${sw_pmd_type} | ${socket_id}
-| | ... | ${count}
+| | ... | ${thr_count_int}
| Apply startup configuration on all VPP DUTs
| | [Documentation] | Write startup configuration and restart VPP on all DUTs.
| ...
| Test Teardown | Tear down performance mrr test
| ...
-| Documentation | *Raw results L2BD test cases*
+| Test Template | Local template
+| ...
+| Documentation | *Raw results L2BD test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ... | with single links between nodes.
| ${container_cpus}= | ${5}
*** Keywords ***
-| Check RR for l2bdbasemaclrn-eth-2memif-1lxc
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
-| | And Initialize L2 Bridge Domain for '1' memif pairs and '${rxq}' rxqueues in 3-node circular topology
+| | And Initialize L2 Bridge Domain for '1' memif pairs in 3-node circular topology
| | Then Traffic should pass with maximum rate
| | ... | ${max_rate}pps | ${framesize} | ${traffic_profile}
*** Test Cases ***
-| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
+| tc01-64B-1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
| | [Tags] | 64B | 1C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
-| tc02-1518B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
+| tc02-1518B-1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
| | [Tags] | 1518B | 1C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
-| tc03-9000B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
+| tc03-9000B-1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
| | [Tags] | 9000B | 1C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
-| tc04-IMIX-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
+| tc04-IMIX-1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
| | [Tags] | IMIX | 1C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
-| tc05-64B-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
+| tc05-64B-2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
| | [Tags] | 64B | 2C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
-| tc06-1518B-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
+| tc06-1518B-2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
| | [Tags] | 1518B | 2C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
-| tc07-9000B-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
+| tc07-9000B-2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
| | [Tags] | 9000B | 2C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
-| tc08-IMIX-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
+| tc08-IMIX-2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
| | [Tags] | IMIX | 2C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
-| tc09-64B-4t4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
+| tc09-64B-4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
| | [Tags] | 64B | 4C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
-| tc10-1518B-4t4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
+| tc10-1518B-4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
| | [Tags] | 1518B | 4C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
-| tc11-9000B-4t4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
+| tc11-9000B-4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
| | [Tags] | 9000B | 4C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
-| tc12-IMIX-4t4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
+| tc12-IMIX-4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
| | [Tags] | IMIX | 4C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| Test Teardown | Tear down performance discovery test | ${min_rate}pps
| ... | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Pkt throughput L2BD test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${container_cpus}= | ${5}
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with Memif
-| | [Arguments] | ${framesize} | ${min_rate} | ${wt} | ${rxq} | ${search_type}
+| Local template
+| | [Documentation]
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Find ${search_type} for ${framesize}B frames using binary search\
+| | ... | start at linerate, step ${min_rate}pps.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - search_type - NDR or PDR. Type: string
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ... | - min_rate - Min rate for binary search, default value: ${50000}.
+| | ... | Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Set Variable If
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
-| | Add PCI Devices To DUTs In 3-node Single Link Topology
+| | Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
+| | Add PCI devices to all DUTs
| | Run Keyword If | ${get_framesize} < ${1522} | Add No Multi Seg to all DUTs
| | Apply startup configuration on all VPP DUTs
-| | Initialize L2 Bridge Domain for '1' memif pairs and '${rxq}' rxqueues in 3-node circular topology
+| | Initialize L2 Bridge Domain for '1' memif pairs in 3-node circular topology
| | Run Keyword If | '${search_type}' == 'NDR'
| | ... | Find NDR using binary search and pps
| | ... | ${framesize} | ${binary_min} | ${binary_max} | ${traffic_profile}
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with Memif
-| | framesize=${64} | min_rate=${50000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${1} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with Memif
-| | framesize=${64} | min_rate=${50000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${1} | search_type=PDR
| tc03-IMIX-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with Memif
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=NDR
| tc04-IMIX-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with Memif
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=PDR
| tc05-1518B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with Memif
-| | framesize=${1518} | min_rate=${50000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${1} | search_type=NDR
| tc06-1518B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with Memif
-| | framesize=${1518} | min_rate=${50000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${1} | search_type=PDR
| tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with Memif
-| | framesize=${64} | min_rate=${50000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${2} | search_type=NDR
| tc08-64B-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with Memif
-| | framesize=${64} | min_rate=${50000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${2} | search_type=PDR
| tc09-IMIX-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with Memif
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${2} | search_type=NDR
| tc10-IMIX-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with Memif
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${2} | search_type=PDR
| tc11-1518B-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with Memif
-| | framesize=${1518} | min_rate=${50000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${2} | search_type=NDR
| tc12-1518B-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with Memif
-| | framesize=${1518} | min_rate=${50000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${2} | search_type=PDR
| ...
| Test Teardown | Tear down performance mrr test
| ...
-| Test Template | Check RR for l2xcbase-eth-1memif-1dcr
+| Test Template | Local template
| ...
| Documentation | *Raw results L2XC test cases*
| ...
| ${container_cpus}= | ${5}
*** Keywords ***
-| Check RR for l2xcbase-eth-1memif-1dcr
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add single PCI device to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 xconnect for single memif in 3-node circular topology
-| | ... | ${rxq}
| | Then Traffic should pass with maximum rate
| | ... | ${max_rate}pps | ${framesize} | ${traffic_profile}
*** Test Cases ***
| tc01-64B-1t1c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| Test Teardown | Tear down performance discovery test | ${min_rate}pps
| ... | ${framesize} | ${traffic_profile}
| ...
-| Test Template | Find NDRPDR for l2xcbase-eth-1memif-1dcr
+| Test Template | Local template
| ...
| Documentation | *RFC2544: Pkt throughput L2XC test cases*
| ...
| ${container_cpus}= | ${5}
*** Keywords ***
-| Find NDRPDR for l2xcbase-eth-1memif-1dcr
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Find ${search_type} for ${framesize} frames using binary search\
-| | ... | start at 10GE linerate, step 50kpps.
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Find ${search_type} for ${framesize}B frames using binary search\
+| | ... | start at linerate, step ${min_rate}pps.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - search_type - NDR or PDR. Type: string
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ... | - min_rate - Min rate for binary search, default value: ${50000}.
+| | ... | Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq} | ${search_type}
-| | ... | ${min_rate}=${50000}
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add single PCI device to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 xconnect for single memif in 3-node circular topology
-| | ... | ${rxq}
| | Then Run Keyword If | '${search_type}' == 'NDR'
| | ... | Find NDR using binary search and pps
| | ... | ${framesize} | ${binary_min} | ${binary_max} | ${traffic_profile}
*** Test Cases ***
| tc01-64B-1t1c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | framesize=${64} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${1} | search_type=NDR
| tc02-64B-1t1c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC
-| | framesize=${64} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${1} | search_type=PDR
| tc03-1518B-1t1c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | framesize=${1518} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${1} | search_type=NDR
| tc04-1518B-1t1c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC
-| | framesize=${1518} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${1} | search_type=PDR
| tc05-9000B-1t1c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 9000B | 1C | NDRDISC
-| | framesize=${9000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${9000} | phy_cores=${1} | search_type=NDR
| tc06-9000B-1t1c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 1C | PDRDISC
-| | framesize=${9000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${9000} | phy_cores=${1} | search_type=PDR
| tc07-IMIX-1t1c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1 | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=NDR
| tc08-IMIX-1t1c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1 | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=PDR
| tc09-64B-2t2c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | framesize=${64} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${2} | search_type=NDR
| tc10-64B-2t2c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC
-| | framesize=${64} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${2} | search_type=PDR
| tc11-1518B-2t2c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC
-| | framesize=${1518} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${2} | search_type=NDR
| tc12-1518B-2t2c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC
-| | framesize=${1518} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${2} | search_type=PDR
| tc13-9000B-2t2c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 9000B | 2C | NDRDISC
-| | framesize=${9000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${9000} | phy_cores=${2} | search_type=NDR
| tc14-9000B-2t2c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 2C | PDRDISC
-| | framesize=${9000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${9000} | phy_cores=${2} | search_type=PDR
| tc15-IMIX-2t2c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1 | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${2} | search_type=NDR
| tc16-IMIX-2t2c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1 | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${2} | search_type=PDR
| tc17-64B-4t4c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | framesize=${64} | wt=4 | rxq=2 | search_type=NDR
+| | framesize=${64} | phy_cores=${4} | search_type=NDR
| tc18-64B-4t4c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC
-| | framesize=${64} | wt=4 | rxq=2 | search_type=PDR
+| | framesize=${64} | phy_cores=${4} | search_type=PDR
| tc19-1518B-4t4c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC
-| | framesize=${1518} | wt=4 | rxq=2| search_type=NDR
+| | framesize=${1518} | phy_cores=${4} | search_type=NDR
| tc20-1518B-4t4c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC
-| | framesize=${1518} | wt=4 | rxq=2 | search_type=PDR
+| | framesize=${1518} | phy_cores=${4} | search_type=PDR
| tc21-9000B-4t4c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 9000B | 4C | NDRDISC
-| | framesize=${9000} | wt=4 | rxq=2 | search_type=NDR
+| | framesize=${9000} | phy_cores=${4} | search_type=NDR
| tc22-9000B-4t4c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 4C | PDRDISC
-| | framesize=${9000} | wt=4 | rxq=2 | search_type=PDR
+| | framesize=${9000} | phy_cores=${4} | search_type=PDR
| tc23-IMIX-4t4c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2 | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${4} | search_type=NDR
| tc24-IMIX-4t4c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2 | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${4} | search_type=PDR
| ...
| Test Teardown | Tear down performance mrr test
| ...
-| Documentation | *Raw results L2XC test cases*
+| Test Template | Local template
+| ...
+| Documentation | *Raw results L2XC test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ... | with single links between nodes.
| ${container_cpus}= | ${5}
*** Keywords ***
-| Check RR for l2xcbase-eth-2memif-1dcr
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
-| | And Initialize L2 xconnect for '1' memif pairs and '${rxq}' rxqueues in 3-node circular topology
+| | And Initialize L2 xconnect for '1' memif pairs in 3-node circular topology
| | Then Traffic should pass with maximum rate
| | ... | ${max_rate}pps | ${framesize} | ${traffic_profile}
*** Test Cases ***
| tc01-64B-1t1c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| Test Teardown | Tear down performance discovery test | ${min_rate}pps
| ... | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Pkt throughput L2XC test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
*** Keywords ***
| L2 Cross Connect over Memif Binary Search
-| | [Arguments] | ${framesize} | ${min_rate} | ${wt} | ${rxq} | ${search_type}
+| | [Documentation]
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Find ${search_type} for ${framesize}B frames using binary search\
+| | ... | start at linerate, step ${min_rate}pps.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - search_type - NDR or PDR. Type: string
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ... | - min_rate - Min rate for binary search, default value: ${50000}.
+| | ... | Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Set Variable If
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
-| | Add PCI Devices To DUTs In 3-node Single Link Topology
+| | Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
+| | Add PCI devices to all DUTs
| | Run Keyword If | ${get_framesize} < ${1522} | Add No Multi Seg to all DUTs
| | Apply startup configuration on all VPP DUTs
-| | Initialize L2 xconnect for '${container_count}' memif pairs and '${rxq}' rxqueues in 3-node circular topology
+| | Initialize L2 xconnect for '${container_count}' memif pairs in 3-node circular topology
| | Run Keyword If | '${search_type}' == 'NDR'
| | ... | Find NDR using binary search and pps
| | ... | ${framesize} | ${binary_min} | ${binary_max} | ${traffic_profile}
*** Test Cases ***
| tc01-64B-1t1c-eth-l2xcbase-eth-2memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${1} | search_type=NDR
| tc02-64B-1t1c-eth-l2xcbase-eth-2memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${1} | search_type=PDR
| tc03-IMIX-1t1c-eth-l2xcbase-eth-2memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=NDR
| tc04-IMIX-1t1c-eth-l2xcbase-eth-2memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=PDR
| tc05-1518B-1t1c-eth-l2xcbase-eth-2memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${1} | search_type=NDR
| tc06-1518B-1t1c-eth-l2xcbase-eth-2memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${1} | search_type=PDR
| tc07-64B-2t2c-eth-l2xcbase-eth-2memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${2} | search_type=NDR
| tc08-64B-2t2c-eth-l2xcbase-eth-2memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${2} | search_type=PDR
| tc09-IMIX-2t2c-eth-l2xcbase-eth-2memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${2} | search_type=NDR
| tc10-IMIX-2t2c-eth-l2xcbase-eth-2memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${2} | search_type=PDR
| tc11-1518B-2t2c-eth-l2xcbase-eth-2memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${2} | search_type=NDR
| tc12-1518B-2t2c-eth-l2xcbase-eth-2memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${2} | search_type=PDR
| ...
| Test Teardown | Tear down performance mrr test
| ...
-| Documentation | *Raw results L2XC test cases*
+| Test Template | Local template
+| ...
+| Documentation | *Raw results L2XC test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ... | with single links between nodes.
| ${container_cpus}= | ${5}
*** Keywords ***
-| Check RR for l2xcbase-eth-2memif-1lxc
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
-| | And Initialize L2 xconnect for '1' memif pairs and '${rxq}' rxqueues in 3-node circular topology
+| | And Initialize L2 xconnect for '1' memif pairs in 3-node circular topology
| | Then Traffic should pass with maximum rate
| | ... | ${max_rate}pps | ${framesize} | ${traffic_profile}
*** Test Cases ***
| tc01-64B-1t1c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| Test Teardown | Tear down performance discovery test | ${min_rate}pps
| ... | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Pkt throughput L2XC test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
*** Keywords ***
| L2 Cross Connect over Memif Binary Search
-| | [Arguments] | ${framesize} | ${min_rate} | ${wt} | ${rxq} | ${search_type}
+| | [Documentation]
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Find ${search_type} for ${framesize}B frames using binary search\
+| | ... | start at linerate, step ${min_rate}pps.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - search_type - NDR or PDR. Type: string
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ... | - min_rate - Min rate for binary search, default value: ${50000}.
+| | ... | Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Set Variable If
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
-| | Add PCI Devices To DUTs In 3-node Single Link Topology
+| | Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
+| | Add PCI devices to all DUTs
| | Run Keyword If | ${get_framesize} < ${1522} | Add No Multi Seg to all DUTs
| | Apply startup configuration on all VPP DUTs
-| | Initialize L2 xconnect for '1' memif pairs and '${rxq}' rxqueues in 3-node circular topology
+| | Initialize L2 xconnect for '1' memif pairs in 3-node circular topology
| | Run Keyword If | '${search_type}' == 'NDR'
| | ... | Find NDR using binary search and pps
| | ... | ${framesize} | ${binary_min} | ${binary_max} | ${traffic_profile}
*** Test Cases ***
| tc01-64B-1t1c-eth-l2xcbase-eth-2memif-1lxc-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${1} | search_type=NDR
| tc02-64B-1t1c-eth-l2xcbase-eth-2memif-1lxc-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${1} | search_type=PDR
| tc03-IMIX-1t1c-eth-l2xcbase-eth-2memif-1lxc-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=NDR
| tc04-IMIX-1t1c-eth-l2xcbase-eth-2memif-1lxc-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=PDR
| tc05-1518B-1t1c-eth-l2xcbase-eth-2memif-1lxc-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${1} | search_type=NDR
| tc06-1518B-1t1c-eth-l2xcbase-eth-2memif-1lxc-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${1} | search_type=PDR
| tc07-64B-2t2c-eth-l2xcbase-eth-2memif-1lxc-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${2} | search_type=NDR
| tc08-64B-2t2c-eth-l2xcbase-eth-2memif-1lxc-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${2} | search_type=PDR
| tc09-IMIX-2t2c-eth-l2xcbase-eth-2memif-1lxc-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${2} | search_type=NDR
| tc10-IMIX-2t2c-eth-l2xcbase-eth-2memif-1lxc-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${2} | search_type=PDR
| tc11-1518B-2t2c-eth-l2xcbase-eth-2memif-1lxc-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${2} | search_type=NDR
| tc12-1518B-2t2c-eth-l2xcbase-eth-2memif-1lxc-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC
-| | [Template] | L2 Cross Connect over Memif Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${2} | search_type=PDR
| ...
| Test Teardown | Tear down performance mrr test
| ...
-| Documentation | *Raw results L2BD test cases*
+| Test Template | Local template
+| ...
+| Documentation | *Raw results L2BD test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ... | with single links between nodes.
| ${container_cpus}= | ${5}
*** Keywords ***
-| Check RR for l2bdbasemaclrn-eth-2memif-1lxc
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
-| | And Initialize L2 Bridge Domain for '1' memif pairs and '${rxq}' rxqueues in 3-node circular topology
+| | And Initialize L2 Bridge Domain for '1' memif pairs in 3-node circular topology
| | Then Traffic should pass with maximum rate
| | ... | ${max_rate}pps | ${framesize} | ${traffic_profile}
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ...
| Test Teardown | Tear down performance mrr test
| ...
-| Test Template | Check RR for l2xcbase-eth-1memif-1dcr
+| Test Template | Local template
| ...
| Documentation | *Raw results L2XC test cases*
| ...
| ${container_cpus}= | ${5}
*** Keywords ***
-| Check RR for l2xcbase-eth-1memif-1dcr
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add single PCI device to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 xconnect for single memif in 3-node circular topology
-| | ... | ${rxq}
| | Then Traffic should pass with maximum rate
| | ... | ${max_rate}pps | ${framesize} | ${traffic_profile}
*** Test Cases ***
| tc01-64B-1t1c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2xcbase-eth-1memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| Test Teardown | Tear down performance discovery test | ${min_rate}pps
| ... | ${framesize} | ${traffic_profile}
| ...
-| Test Template | Find NDRPDR for l2xcbase-eth-1memif-1dcr
+| Test Template | Local template
| ...
| Documentation | *Raw results L2XC test cases*
| ...
| ${container_cpus}= | ${5}
*** Keywords ***
-| Find NDRPDR for l2xcbase-eth-1memif-1dcr
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Find ${search_type} for ${framesize} frames using binary search\
-| | ... | start at 10GE linerate, step 50kpps.
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Find ${search_type} for ${framesize}B frames using binary search\
+| | ... | start at linerate, step ${min_rate}pps.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - search_type - NDR or PDR. Type: string
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ... | - min_rate - Min rate for binary search, default value: ${50000}.
+| | ... | Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq} | ${search_type}
-| | ... | ${min_rate}=${50000}
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add single PCI device to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 xconnect for single memif in 3-node circular topology
-| | ... | ${rxq}
| | Then Run Keyword If | '${search_type}' == 'NDR'
| | ... | Find NDR using binary search and pps
| | ... | ${framesize} | ${binary_min} | ${binary_max} | ${traffic_profile}
*** Test Cases ***
| tc01-64B-1t1c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | framesize=${64} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${1} | search_type=NDR
| tc02-64B-1t1c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC
-| | framesize=${64} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${1} | search_type=PDR
| tc03-1518B-1t1c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | framesize=${1518} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${1} | search_type=NDR
| tc04-1518B-1t1c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC
-| | framesize=${1518} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${1} | search_type=PDR
| tc05-9000B-1t1c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 9000B | 1C | NDRDISC
-| | framesize=${9000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${9000} | phy_cores=${1} | search_type=NDR
| tc06-9000B-1t1c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 1C | PDRDISC
-| | framesize=${9000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${9000} | phy_cores=${1} | search_type=PDR
| tc07-IMIX-1t1c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1 | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=NDR
| tc08-IMIX-1t1c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1 | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=PDR
| tc09-64B-2t2c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | framesize=${64} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${2} | search_type=NDR
| tc10-64B-2t2c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC
-| | framesize=${64} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${2} | search_type=PDR
| tc11-1518B-2t2c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC
-| | framesize=${1518} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${2} | search_type=NDR
| tc12-1518B-2t2c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC
-| | framesize=${1518} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${2} | search_type=PDR
| tc13-9000B-2t2c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 9000B | 2C | NDRDISC
-| | framesize=${9000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${9000} | phy_cores=${2} | search_type=NDR
| tc14-9000B-2t2c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 2C | PDRDISC
-| | framesize=${9000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${9000} | phy_cores=${2} | search_type=PDR
| tc15-IMIX-2t2c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1 | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${2} | search_type=NDR
| tc16-IMIX-2t2c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1 | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${2} | search_type=PDR
| tc17-64B-4t4c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | framesize=${64} | wt=4 | rxq=2 | search_type=NDR
+| | framesize=${64} | phy_cores=${4} | search_type=NDR
| tc18-64B-4t4c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC
-| | framesize=${64} | wt=4 | rxq=2 | search_type=PDR
+| | framesize=${64} | phy_cores=${4} | search_type=PDR
| tc19-1518B-4t4c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC
-| | framesize=${1518} | wt=4 | rxq=2 | search_type=NDR
+| | framesize=${1518} | phy_cores=${4} | search_type=NDR
| tc20-1518B-4t4c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC
-| | framesize=${1518} | wt=4 | rxq=2 | search_type=PDR
+| | framesize=${1518} | phy_cores=${4} | search_type=PDR
| tc21-9000B-4t4c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 9000B | 4C | NDRDISC
-| | framesize=${9000} | wt=4 | rxq=2 | search_type=NDR
+| | framesize=${9000} | phy_cores=${4} | search_type=NDR
| tc22-9000B-4t4c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 4C | PDRDISC
-| | framesize=${9000} | wt=4 | rxq=2 | search_type=PDR
+| | framesize=${9000} | phy_cores=${4} | search_type=PDR
| tc23-IMIX-4t4c-eth-l2xcbase-eth-1memif-1dcr-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2 | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${4} | search_type=NDR
| tc24-IMIX-4t4c-eth-l2xcbase-eth-1memif-1dcr-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2 | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${4} | search_type=PDR
| ...
| Test Teardown | Tear down performance mrr test
| ...
-| Documentation | *Raw results L2XC test cases*
+| Test Template | Local template
+| ...
+| Documentation | *Raw results L2XC test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ... | with single links between nodes.
| ${container_cpus}= | ${5}
*** Keywords ***
-| Check RR for l2xcbase-eth-2memif-1dcr
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
-| | And Initialize L2 xconnect for '1' memif pairs and '${rxq}' rxqueues in 3-node circular topology
+| | And Initialize L2 xconnect for '1' memif pairs in 3-node circular topology
| | Then Traffic should pass with maximum rate
| | ... | ${max_rate}pps | ${framesize} | ${traffic_profile}
*** Test Cases ***
| tc01-64B-1t1c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2xcbase-eth-2memif-1dcr-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1dcr
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ...
| Test Teardown | Tear down performance mrr test
| ...
-| Documentation | *Raw results L2XC test cases*
+| Test Template | Local template
+| ...
+| Documentation | *Raw results L2XC test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ... | with single links between nodes.
| ${container_cpus}= | ${5}
*** Keywords ***
-| Check RR for l2xcbase-eth-2memif-1lxc
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
-| | And Initialize L2 xconnect for '1' memif pairs and '${rxq}' rxqueues in 3-node circular topology
+| | And Initialize L2 xconnect for '1' memif pairs in 3-node circular topology
| | Then Traffic should pass with maximum rate
| | ... | ${max_rate}pps | ${framesize} | ${traffic_profile}
*** Test Cases ***
| tc01-64B-1t1c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ...
| Test Teardown | Tear down performance mrr test
| ...
-| Documentation | *Raw results L2BD test cases*
+| Test Template | Local template
+| ...
+| Documentation | *Raw results L2BD test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ... | with single links between nodes.
| ${container_cpus}= | ${5}
*** Keywords ***
-| Check RR for l2bdbasemaclrn-eth-2memif-1lxc
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_24.5G} | ${get_framesize}
| | ${max_rate}= | Set Variable If
| | ... | ${max_rate} > ${s_18.75Mpps} | ${s_18.75Mpps} | ${max_rate}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
-| | And Initialize L2 Bridge Domain for '1' memif pairs and '${rxq}' rxqueues in 3-node circular topology
+| | And Initialize L2 Bridge Domain for '1' memif pairs in 3-node circular topology
| | Then Traffic should pass with maximum rate
| | ... | ${max_rate}pps | ${framesize} | ${traffic_profile}
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2bdbasemaclrn-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | [Template] | Check RR for l2bdbasemaclrn-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2XC test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${container_cpus}= | ${5}
*** Keywords ***
-| Check RR for l2xcbase-eth-2memif-1lxc
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_24.5G} | ${get_framesize}
| | ${max_rate}= | Set Variable If
| | ... | ${max_rate} > ${s_18.75Mpps} | ${s_18.75Mpps} | ${max_rate}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
-| | And Initialize L2 xconnect for '1' memif pairs and '${rxq}' rxqueues in 3-node circular topology
+| | And Initialize L2 xconnect for '1' memif pairs in 3-node circular topology
| | Then Traffic should pass with maximum rate
| | ... | ${max_rate}pps | ${framesize} | ${traffic_profile}
*** Test Cases ***
| tc01-64B-1t1c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2xcbase-eth-2memif-1lxc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | [Template] | Check RR for l2xcbase-eth-2memif-1lxc
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| Suite Teardown | Tear down 3-node performance topology
| ...
| Test Setup | Set up performance test
+| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 IPsec tunnel mode performance test suite.*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${n_tunnels}
*** Keywords ***
-| Check RR for IPv4 routing with IPSec HW cryptodev
+| Local template
| | [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 MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPSec tunneling AES GCM config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_24.5G}
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
-| | And Run Keyword If | ${get_framesize} < ${1522}
+| | And Run Keyword If | ${get_framesize} + ${ipsec_overhead} < ${1522}
| | ... | Add no multi seg to all DUTs
-| | And Add cryptodev to all DUTs | ${${wt}}
+| | And Add cryptodev to all DUTs | ${${phy_cores}}
| | 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
*** Test Cases ***
| tc01-64B-1t1c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${1518} | wt=1 | rxq=1
-
-# TODO: Add check to make test fail if rx=0.
-# TODO: Add 9000B test cases when they start passing.
+| | framesize=${1518} | phy_cores=${1}
| tc04-IMIX-1t1c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc08-IMIX-2t2c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc12-IMIX-4t4c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| Test Teardown | Tear down performance discovery test | ${min_rate}pps
| ... | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *IPv4 IPsec tunnel mode performance test suite.*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${n_tunnels}
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with IPSec HW cryptodev
+| Local template
| | [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}
+| | ... | [Cfg] DUT runs IPSec tunneling AES GCM config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Find ${search_type} for ${framesize}B frames using binary search\
+| | ... | start at linerate, step ${min_rate}pps.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - search_type - NDR or PDR. Type: string
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ... | - min_rate - Min rate for binary search, default value: ${50000}.
+| | ... | Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
-| | And Add no multi seg to all DUTs
-| | And Add cryptodev to all DUTs | ${${wt}}
+| | And Run Keyword If | ${get_framesize} + ${ipsec_overhead_gcm} < ${1522}
+| | ... | Add no multi seg to all DUTs
+| | And Add cryptodev to all DUTs | ${${phy_cores}}
| | 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
*** Test Cases ***
| tc01-64B-1t1c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | 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 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec HW cryptodev
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | framesize=${64} | phy_cores=${1} | search_type=NDR
| tc02-64B-1t1c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | 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 50kpps and loss tolerance of 0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec HW cryptodev
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | framesize=${64} | phy_cores=${1} | search_type=PDR
| tc03-1518B-1t1c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | 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 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec HW cryptodev
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | framesize=${1518} | phy_cores=${1} | search_type=NDR
| tc04-1518B-1t1c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | 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 50kpps and loss tolerance of 0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec HW cryptodev
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | framesize=${1518} | phy_cores=${1} | search_type=PDR
| tc05-IMIX-1t1c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | 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 50kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec HW cryptodev
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=NDR
| tc06-IMIX-1t1c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | 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 50kpps and loss tolerance of 0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec HW cryptodev
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=PDR
| tc07-64B-2t2c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | 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 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec HW cryptodev
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | framesize=${64} | phy_cores=${2} | search_type=NDR
| tc08-64B-2t2c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | 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 50kpps and loss tolerance of 0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec HW cryptodev
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | framesize=${64} | phy_cores=${2} | search_type=PDR
| Suite Teardown | Tear down 3-node performance topology
| ...
| Test Setup | Set up performance test
+| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 IPsec tunnel mode performance test suite.*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${n_tunnels}
*** Keywords ***
-| Check RR for IPv4 routing with IPSec HW cryptodev
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPSec tunneling CBC-SHA1 config with ${wt} thread(s),\
-| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPSec tunneling CBC-SHA1 config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_24.5G}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
-| | And Run Keyword If | ${get_framesize} < ${1522}
+| | And Run Keyword If | ${get_framesize} + ${ipsec_overhead} < ${1522}
| | ... | Add no multi seg to all DUTs
-| | And Add cryptodev to all DUTs | ${${wt}}
+| | And Add cryptodev to all DUTs | ${${phy_cores}}
| | 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
*** Test Cases ***
| tc01-64B-1t1c-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${1518} | wt=1 | rxq=1
-
-# TODO: Add check to make test fail if rx=0.
-# TODO: Add 9000B test cases when they start passing.
+| | framesize=${1518} | phy_cores=${1}
| tc04-IMIX-1t1c-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc08-IMIX-2t2c-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc12-IMIX-4t4c-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| | ...
| | [Tags] | 64B | 1C | NDRDISC
| | ...
-| | # FIXME: Move repeated lines into a keyword.
| | ${framesize}= | Set Variable | ${64}
| | ${min_rate}= | Set Variable | ${50000}
| | ${max_rate}= | Set Variable | ${s_18.75Mpps}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${2}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${2}
| | ...
| | [Tags] | 64B | 1C | NDRDISC
| | ...
-| | # FIXME: Move repeated lines into a keyword.
| | ${framesize}= | Set Variable | ${64}
| | ${min_rate}= | Set Variable | ${50000}
| | ${max_rate}= | Set Variable | ${s_18.75Mpps}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES GCM 128
| | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES GCM 128
| | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES GCM 128
| | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES GCM 128
| | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES GCM 128
| | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES GCM 128
| | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES GCM 128
| | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${2}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES GCM 128
| | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${2}
| | ...
| | [Tags] | 64B | 1C | NDRDISC
| | ...
-| | # FIXME: Move repeated lines into a keyword.
| | ${framesize}= | Set Variable | ${64}
| | ${min_rate}= | Set Variable | ${50000}
| | ${max_rate}= | Set Variable | ${s_18.75Mpps}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${2}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${2}
| Suite Teardown | Tear down 3-node performance topology
| ...
| Test Setup | Set up performance test
+| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 IPsec tunnel mode performance test suite.*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${n_tunnels}
*** Keywords ***
-| Check RR for IPv4 routing with IPSec SW cryptodev
+| Local template
| | [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 MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPSec tunneling AES GCM config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_24.5G}
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
-| | And Run Keyword If | ${get_framesize} < ${1522}
+| | And Run Keyword If | ${get_framesize} + ${ipsec_overhead} < ${1522}
| | ... | Add no multi seg to all DUTs
| | And Add DPDK SW cryptodev on DUTs in 3-node single-link circular topology
-| | ... | aesni_gcm | ${${wt}}
+| | ... | aesni_gcm | ${${phy_cores}}
| | 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
*** Test Cases ***
| tc01-64B-1t1c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=${1518} | wt=1 | rxq=1
-
-# TODO: Add check to make test fail if rx=0.
-# TODO: Add 9000B test cases when they start passing.
+| | framesize=${1518} | phy_cores=${1}
| tc04-IMIX-1t1c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc08-IMIX-2t2c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc12-IMIX-4t4c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| Test Teardown | Tear down performance discovery test | ${min_rate}pps
| ... | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *IPv4 IPsec tunnel mode performance test suite.*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${n_tunnels}
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
+| Local template
| | [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
+| | ... | [Cfg] DUT runs IPSec tunneling AES GCM config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Find ${search_type} for ${framesize}B frames using binary search\
+| | ... | start at linerate, step ${min_rate}pps.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - search_type - NDR or PDR. Type: string
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ... | - min_rate - Min rate for binary search, default value: ${50000}.
+| | ... | Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
-| | And Add no multi seg to all DUTs
+| | And Run Keyword If | ${get_framesize} + ${ipsec_overhead_gcm} < ${1522}
+| | ... | Add no multi seg to all DUTs
| | And Add DPDK SW cryptodev on DUTs in 3-node single-link circular topology
-| | ... | aesni_gcm | ${${wt}}
+| | ... | aesni_gcm | ${${phy_cores}}
| | 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
*** Test Cases ***
| tc01-64B-1t1c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | 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 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | framesize=${64} | phy_cores=${1} | search_type=NDR
| tc02-64B-1t1c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | 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 50kpps and loss tolerance of 0.5%.
-| | ...
| | [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=${50000} | search_type=PDR
+| | framesize=${64} | phy_cores=${1} | search_type=PDR
| tc03-1518B-1t1c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | 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 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | framesize=${1518} | phy_cores=${1} | search_type=NDR
| tc04-1518B-1t1c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | 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 50kpps and loss tolerance of 0.5%.
-| | ...
| | [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=${50000} | search_type=PDR
+| | framesize=${1518} | phy_cores=${1} | search_type=PDR
| tc05-IMIX-1t1c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | 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 50kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [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=${50000} | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=NDR
| tc06-IMIX-1t1c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | 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 50kpps and loss tolerance of 0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [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=${50000} | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=PDR
| tc07-64B-2t2c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | 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 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | framesize=${64} | phy_cores=${2} | search_type=NDR
| tc08-64B-2t2c-ethip4ipsecbasetnlsw-ip4base-int-aes-gcm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | 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 50kpps and loss tolerance of 0.5%.
-| | ...
| | [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=${50000} | search_type=PDR
+| | framesize=${64} | phy_cores=${2} | search_type=PDR
| Suite Teardown | Tear down 3-node performance topology
| ...
| Test Setup | Set up performance test
+| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 IPsec tunnel mode performance test suite.*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${n_tunnels}
*** Keywords ***
-| Check RR for IPv4 routing with IPSec SW cryptodev
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPSec tunneling CBC-SHA1 config with ${wt} thread(s),\
-| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPSec tunneling CBC-SHA1 config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_24.5G}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
-| | And Run Keyword If | ${get_framesize} < ${1522}
+| | And Run Keyword If | ${get_framesize} + ${ipsec_overhead} < ${1522}
| | ... | Add no multi seg to all DUTs
| | And Add DPDK SW cryptodev on DUTs in 3-node single-link circular topology
-| | ... | aesni_mb | ${${wt}}
+| | ... | aesni_mb | ${${phy_cores}}
| | 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
*** Test Cases ***
| tc01-64B-1t1c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=${1518} | wt=1 | rxq=1
-
-# TODO: Add check to make test fail if rx=0.
-# TODO: Add 9000B test cases when they start passing.
+| | framesize=${1518} | phy_cores=${1}
| tc04-IMIX-1t1c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc08-IMIX-2t2c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc12-IMIX-4t4c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec SW cryptodev
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| Test Teardown | Tear down performance discovery test | ${min_rate}pps
| ... | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *IPv4 IPsec tunnel mode performance test suite.*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${n_tunnels}
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPSec tunneling CBC-SHA1 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}
+| | ... | [Cfg] DUT runs IPSec tunneling CBC-SHA1 config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Find ${search_type} for ${framesize}B frames using binary search\
+| | ... | start at linerate, step ${min_rate}pps.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - search_type - NDR or PDR. Type: string
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ... | - min_rate - Min rate for binary search, default value: ${50000}.
+| | ... | Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
-| | And Add no multi seg to all DUTs
+| | And Run Keyword If | ${get_framesize} + ${ipsec_overhead_gcm} < ${1522}
+| | ... | Add no multi seg to all DUTs
| | And Add DPDK SW cryptodev on DUTs in 3-node single-link circular topology
-| | ... | aesni_mb | ${${wt}}
+| | ... | aesni_mb | ${${phy_cores}}
| | 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
*** Test Cases ***
| tc01-64B-1t1c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | 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 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | framesize=${64} | phy_cores=${1} | search_type=NDR
| tc02-64B-1t1c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | 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 50kpps and loss tolerance of 0.5%.
-| | ...
| | [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=${50000} | search_type=PDR
+| | framesize=${64} | phy_cores=${1} | search_type=PDR
| tc03-1518B-1t1c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | 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 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | framesize=${1518} | phy_cores=${1} | search_type=NDR
| tc04-1518B-1t1c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | 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 50kpps and loss tolerance of 0.5%.
-| | ...
| | [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=${50000} | search_type=PDR
+| | framesize=${1518} | phy_cores=${1} | search_type=PDR
| tc05-IMIX-1t1c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | 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 50kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [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=${50000} | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=NDR
| tc06-IMIX-1t1c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | 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 50kpps and loss tolerance of 0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [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=${50000} | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | search_type=PDR
| tc07-64B-2t2c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | 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 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | framesize=${64} | phy_cores=${2} | search_type=NDR
| tc08-64B-2t2c-ethip4ipsecbasetnlsw-ip4base-int-cbc-sha1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | 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 50kpps and loss tolerance of 0.5%.
-| | ...
| | [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=${50000} | search_type=PDR
+| | framesize=${64} | phy_cores=${2} | search_type=PDR
| Test Teardown | Tear down performance discovery test | ${min_rate}pps
| ... | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *IPv4 IPsec tunnel mode performance test suite.*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${n_tunnels}
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
+| Local template
| | [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}
+| | ... | [Cfg] DUT runs IPSec tunneling AES GCM config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Find ${search_type} for ${framesize}B frames using binary search\
+| | ... | start at linerate, step ${min_rate}pps.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - search_type - NDR or PDR. Type: string
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ... | - min_rate - Min rate for binary search, default value: ${50000}.
+| | ... | Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
-| | And Add no multi seg to all DUTs
+| | And Run Keyword If | ${get_framesize} + ${ipsec_overhead_gcm} < ${1522}
+| | ... | Add no multi seg to all DUTs
| | And Add DPDK SW cryptodev on DUTs in 3-node single-link circular topology
-| | ... | aesni_gcm | ${${wt}}
+| | ... | aesni_gcm | ${${phy_cores}}
| | 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
*** Test Cases ***
| tc01-64B-1t1c-ethip4ipsecbasetnlsw-ip4base-tnl-aes-gcm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel AES GCM in each direction, configured\
-| | ... | 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 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | framesize=${64} | phy_cores=${1} | 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 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 40GE\
-| | ... | linerate, step 50kpps and loss tolerance of 0.5%.
-| | ...
| | [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=${50000} | search_type=PDR
+| | framesize=${64} | phy_cores=${1} | 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 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames\
-| | ... | using binary search start at 40GE linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | framesize=${1518} | phy_cores=${1} | 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 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 40GE\
-| | ... | linerate, step 50kpps and loss tolerance of 0.5%.
-| | ...
| | [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=${50000} | search_type=PDR
+| | framesize=${1518} | phy_cores=${1} | 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 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frames\
-| | ... | using binary search start at 40GE linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [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=${50000} | search_type=NDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | 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 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frames using binary search start at 40GE\
-| | ... | linerate, step 50kpps and loss tolerance of 0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [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=${50000} | search_type=PDR
+| | framesize=IMIX_v4_1 | phy_cores=${1} | 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 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames\
-| | ... | using binary search start at 40GE linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | framesize=${64} | phy_cores=${2} | 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 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 40GE\
-| | ... | linerate, step 50kpps and loss tolerance of 0.5%.
-| | ...
| | [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=${50000} | search_type=PDR
+| | framesize=${64} | phy_cores=${2} | search_type=PDR
| Test Teardown | Tear down performance discovery test | ${min_rate}pps
| ... | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *IPv4 IPsec tunnel mode performance test suite.*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${n_tunnels}
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPSec tunneling CBC-SHA1 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}
+| | ... | [Cfg] DUT runs IPSec tunneling CBC-SHA1 config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Find ${search_type} for ${framesize}B frames using binary search\
+| | ... | start at linerate, step ${min_rate}pps.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - search_type - NDR or PDR. Type: string
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ... | - min_rate - Min rate for binary search, default value: ${50000}.
+| | ... | Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
-| | And Add no multi seg to all DUTs
+| | And Run Keyword If | ${get_framesize} + ${ipsec_overhead_gcm} < ${1522}
+| | ... | Add no multi seg to all DUTs
| | And Add DPDK SW cryptodev on DUTs in 3-node single-link circular topology
-| | ... | aesni_mb | ${${wt}}
+| | ... | aesni_mb | ${${phy_cores}}
| | 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
*** Test Cases ***
| tc01-64B-1t1c-ethip4ipsecbasetnlsw-ip4base-tnl-cbc-sha1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | 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 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4ipsecbasetnlsw-ip4base-tnl-cbc-sha1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | 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 50kpps and loss tolerance of 0.5%.
-| | ...
| | [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=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-ethip4ipsecbasetnlsw-ip4base-tnl-cbc-sha1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | 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 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-ethip4ipsecbasetnlsw-ip4base-tnl-cbc-sha1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | 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 50kpps and loss tolerance of 0.5%.
-| | ...
| | [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=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-ethip4ipsecbasetnlsw-ip4base-tnl-cbc-sha1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | 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 50kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [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=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-ethip4ipsecbasetnlsw-ip4base-tnl-cbc-sha1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | 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 50kpps and loss tolerance of 0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [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=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-ethip4ipsecbasetnlsw-ip4base-tnl-cbc-sha1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | 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 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with IPSec SW cryptodev
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-ethip4ipsecbasetnlsw-ip4base-tnl-cbc-sha1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1 IPsec tunnel CBC-SHA1 in each direction, configured\
-| | ... | 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 50kpps and loss tolerance of 0.5%.
-| | ...
| | [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=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| Suite Teardown | Tear down 3-node performance topology
| ...
| Test Setup | Set up performance test
+| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 IPsec tunnel mode performance test suite.*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${n_tunnels}
*** Keywords ***
-| Check RR for IPv4 routing with IPSec HW cryptodev
+| Local template
| | [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 MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPSec tunneling AES GCM config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_24.5G}
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
-| | And Run Keyword If | ${get_framesize} < ${1522}
+| | And Run Keyword If | ${get_framesize} + ${ipsec_overhead} < ${1522}
| | ... | Add no multi seg to all DUTs
-| | And Add cryptodev to all DUTs | ${${wt}}
+| | And Add cryptodev to all DUTs | ${${phy_cores}}
| | 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
*** Test Cases ***
| tc01-64B-1t1c-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels AES GCM in each direction,\
-| | ... | configured with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels AES GCM in each direction,\
-| | ... | configured with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${1518} | wt=1 | rxq=1
-
-# TODO: Add check to make test fail if rx=0.
-# TODO: Add 9000B test cases when they start passing.
+| | framesize=${1518} | phy_cores=${1}
| tc04-IMIX-1t1c-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels AES GCM in each direction,\
-| | ... | configured with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels AES GCM in each direction,\
-| | ... | configured with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels AES GCM in each direction,\
-| | ... | configured with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc08-IMIX-2t2c-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels AES GCM in each direction,\
-| | ... | configured with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels AES GCM in each direction,\
-| | ... | configured with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels AES GCM in each direction,\
-| | ... | configured with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc12-IMIX-4t4c-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels AES GCM in each direction,\
-| | ... | configured with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| | ...
| | [Tags] | 64B | 1C | NDRDISC
| | ...
-| | # FIXME: Move repeated lines into a keyword.
| | ${framesize}= | Set Variable | ${64}
| | ${min_rate}= | Set Variable | ${50000}
| | ${max_rate}= | Set Variable | ${s_18.75Mpps}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES GCM 128
| | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES GCM 128
| | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES GCM 128
| | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES GCM 128
| | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES GCM 128
| | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES GCM 128
| | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES GCM 128
| | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${2}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES GCM 128
| | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${2}
| Suite Teardown | Tear down 3-node performance topology
| ...
| Test Setup | Set up performance test
+| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 IPsec tunnel mode performance test suite.*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${n_tunnels}
*** Keywords ***
-| Check RR for IPv4 routing with IPSec HW cryptodev
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPSec tunneling CBC-SHA1 config with ${wt} thread(s),\
-| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPSec tunneling CBC-SHA1 config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_24.5G}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
-| | And Run Keyword If | ${get_framesize} < ${1522}
+| | And Run Keyword If | ${get_framesize} + ${ipsec_overhead} < ${1522}
| | ... | Add no multi seg to all DUTs
-| | And Add cryptodev to all DUTs | ${${wt}}
+| | And Add cryptodev to all DUTs | ${${phy_cores}}
| | 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
*** Test Cases ***
| tc01-64B-1t1c-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels CBC-SHA1 in each direction,\
-| | ... | configured with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels CBC-SHA1 in each direction,\
-| | ... | configured with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${1518} | wt=1 | rxq=1
-
-# TODO: Add check to make test fail if rx=0.
-# TODO: Add 9000B test cases when they start passing.
+| | framesize=${1518} | phy_cores=${1}
| tc04-IMIX-1t1c-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels CBC-SHA1 in each direction,\
-| | ... | configured with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels CBC-SHA1 in each direction,\
-| | ... | configured with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels CBC-SHA1 in each direction,\
-| | ... | configured with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc08-IMIX-2t2c-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels CBC-SHA1 in each direction,\
-| | ... | configured with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels CBC-SHA1 in each direction,\
-| | ... | configured with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels CBC-SHA1 in each direction,\
-| | ... | configured with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc12-IMIX-4t4c-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-mrr
-| | [Documentation]
-| | ... | [Cfg] DUTs run 1000 IPsec tunnels CBC-SHA1 in each direction,\
-| | ... | configured with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with IPSec HW cryptodev
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| | ...
| | [Tags] | 64B | 1C | NDRDISC
| | ...
-| | # FIXME: Move repeated lines into a keyword.
| | ${framesize}= | Set Variable | ${64}
| | ${min_rate}= | Set Variable | ${50000}
| | ${max_rate}= | Set Variable | ${s_18.75Mpps}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${2}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${2}
| | ...
| | [Tags] | 64B | 1C | NDRDISC
| | ...
-| | # FIXME: Move repeated lines into a keyword.
| | ${framesize}= | Set Variable | ${64}
| | ${min_rate}= | Set Variable | ${50000}
| | ${max_rate}= | Set Variable | ${s_18.75Mpps}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES GCM 128
| | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES GCM 128
| | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES GCM 128
| | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES GCM 128
| | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES GCM 128
| | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES GCM 128
| | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES GCM 128
| | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${2}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES GCM 128
| | ${auth_alg}= | Integ Alg AES GCM 128
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${2}
| | ...
| | [Tags] | 64B | 1C | NDRDISC
| | ...
-| | # FIXME: Move repeated lines into a keyword.
| | ${framesize}= | Set Variable | ${64}
| | ${min_rate}= | Set Variable | ${50000}
| | ${max_rate}= | Set Variable | ${s_18.75Mpps}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${2}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${2}
| | ...
| | [Tags] | 64B | 1C | NDRDISC
| | ...
-| | # FIXME: Move repeated lines into a keyword.
| | ${framesize}= | Set Variable | ${64}
| | ${min_rate}= | Set Variable | ${50000}
| | ${max_rate}= | Set Variable | ${s_18.75Mpps}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add cryptodev to all DUTs | ${1}
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${2}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${2}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${4}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${encr_alg}= | Crypto Alg AES CBC 128
| | ${auth_alg}= | Integ Alg SHA1 96
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add cryptodev to all DUTs | ${4}
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 whitelist test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Check RR for ethip4-ip4base-copwhtlistbase
+| Local template
| | ...
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-copwhtlistbase
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4-ip4base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-copwhtlistbase
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4-ip4base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-copwhtlistbase
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4-ip4base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-copwhtlistbase
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4-ip4base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-copwhtlistbase
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4-ip4base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-copwhtlistbase
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4-ip4base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-copwhtlistbase
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4-ip4base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-copwhtlistbase
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4-ip4base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-copwhtlistbase
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4-ip4base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-copwhtlistbase
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4-ip4base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-copwhtlistbase
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4-ip4base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-copwhtlistbase
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| Test Teardown | Tear down performance discovery test | ${min_rate}pps
| ... | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Pkt throughput IPv4 whitelist test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Discover NDR or PDR for ethip4-ip4base-copwhtlistbase
+| Local template
| | [Documentation]
| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread(s), ${wt}\
| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
| | ... | [Ver] Find NDR or PDR for ${framesize} frames using binary search\
| | ... | start at 10GE linerate.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-copwhtlistbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port. [Ver] Find NDR
-| | ... | for 64 Byte frames using binary search start at 10GE linerate,
-| | ... | step 50kpps.
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-copwhtlistbase
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4-ip4base-copwhtlistbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port. [Ver] Find PDR
-| | ... | for 64 Byte frames using binary search start at 10GE linerate,
-| | ... | step 50kpps, LT=0.5%.
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-copwhtlistbase
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-ethip4-ip4base-copwhtlistbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port. [Ver] Find NDR
-| | ... | for 1518 Byte frames using binary search start at 10GE linerate,
-| | ... | step 50kpps.
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-copwhtlistbase
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-ethip4-ip4base-copwhtlistbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port. [Ver] Find PDR
-| | ... | for 1518 Byte frames using binary search start at 10GE linerate,
-| | ... | step 50kpps, LT=0.5%.
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-copwhtlistbase
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-9000B-1t1c-ethip4-ip4base-copwhtlistbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port. [Ver] Find NDR
-| | ... | for 9000 Byte frames using binary search start at 10GE linerate,
-| | ... | step 10kpps.
| | [Tags] | 9000B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-copwhtlistbase
-| | wt=1 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${9000} | search_type=NDR
| tc06-9000B-1t1c-ethip4-ip4base-copwhtlistbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port. [Ver] Find PDR
-| | ... | for 9000 Byte frames using binary search start at 10GE linerate,
-| | ... | step 10kpps, LT=0.5%.
| | [Tags] | 9000B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-copwhtlistbase
-| | wt=1 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${9000} | search_type=PDR
| tc07-64B-2t2c-ethip4-ip4base-copwhtlistbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port. [Ver] Find NDR
-| | ... | for 64 Byte frames using binary search start at 10GE linerate,
-| | ... | step 50kpps.
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-copwhtlistbase
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-ethip4-ip4base-copwhtlistbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port. [Ver] Find PDR
-| | ... | for 64 Byte frames using binary search start at 10GE linerate,
-| | ... | step 50kpps, LT=0.5%.
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-copwhtlistbase
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-ethip4-ip4base-copwhtlistbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port. [Ver] Find NDR
-| | ... | for 1518 Byte frames using binary search start at 10GE linerate,
-| | ... | step 50kpps.
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-copwhtlistbase
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-ethip4-ip4base-copwhtlistbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port. [Ver] Find PDR
-| | ... | for 1518 Byte frames using binary search start at 10GE linerate,
-| | ... | step 50kpps, LT=0.5%.
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-copwhtlistbase
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-9000B-2t2c-ethip4-ip4base-copwhtlistbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port. [Ver] Find NDR
-| | ... | for 9000 Byte frames using binary search start at 10GE linerate,
-| | ... | step 10kpps.
| | [Tags] | 9000B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-copwhtlistbase
-| | wt=2 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${9000} | search_type=NDR
| tc12-9000B-2t2c-ethip4-ip4base-copwhtlistbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port. [Ver] Find PDR
-| | ... | for 9000 Byte frames using binary search start at 10GE linerate,
-| | ... | step 10kpps, LT=0.5%.
| | [Tags] | 9000B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-copwhtlistbase
-| | wt=2 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${9000} | search_type=PDR
| tc13-64B-4t4c-ethip4-ip4base-copwhtlistbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port. [Ver] Find NDR
-| | ... | for 64 Byte frames using binary search start at 10GE linerate,
-| | ... | step 50kpps.
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-copwhtlistbase
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-ethip4-ip4base-copwhtlistbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port. [Ver] Find PDR
-| | ... | for 64 Byte frames using binary search start at 10GE linerate,
-| | ... | step 50kpps, LT=0.5%.
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-copwhtlistbase
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-ethip4-ip4base-copwhtlistbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port. [Ver] Find NDR
-| | ... | for 1518 Byte frames using binary search start at 10GE linerate,
-| | ... | step 50kpps.
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-copwhtlistbase
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-ethip4-ip4base-copwhtlistbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port. [Ver] Find PDR
-| | ... | for 1518 Byte frames using binary search start at 10GE linerate,
-| | ... | step 50kpps, LT=0.5%.
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-copwhtlistbase
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-9000B-4t4c-ethip4-ip4base-copwhtlistbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port. [Ver] Find NDR
-| | ... | for 9000 Byte frames using binary search start at 10GE linerate,
-| | ... | step 10kpps.
| | [Tags] | 9000B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-copwhtlistbase
-| | wt=4 | rxq=2 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${9000} | search_type=NDR
| tc18-9000B-4t4c-ethip4-ip4base-copwhtlistbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port. [Ver] Find PDR
-| | ... | for 9000 Byte frames using binary search start at 10GE linerate,
-| | ... | step 10kpps, LT=0.5%.
| | [Tags] | 9000B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-copwhtlistbase
-| | wt=4 | rxq=2 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${9000} | search_type=PDR
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 iAcl whitelist test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Check RR for ethip4-ip4base-iacldstbase
-| | ...
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-iacldstbase
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4-ip4base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-iacldstbase
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4-ip4base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1CC
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-iacldstbase
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4-ip4base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-iacldstbase
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4-ip4base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-iacldstbase
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4-ip4base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-iacldstbase
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4-ip4base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-iacldstbase
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4-ip4base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-iacldstbase
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4-ip4base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-iacldstbase
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4-ip4base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-iacldstbase
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4-ip4base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-iacldstbase
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4-ip4base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-iacldstbase
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| Test Teardown | Tear down performance discovery test | ${min_rate}pps
| ... | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Pkt throughput IPv4 iAcl whitelist test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Discover NDR or PDR for ethip4-ip4base-iacldstbase
+| Local template
| | [Documentation]
| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread(s), ${wt}\
| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
| | ... | [Ver] Find NDR or PDR for ${framesize} frames using binary search\
| | ... | start at 10GE linerate.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-iacldstbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port. [Ver] Find NDR
-| | ... | for 64 Byte frames using binary search start at 10GE linerate,
-| | ... | step 50kpps.
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-iacldstbase
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4-ip4base-iacldstbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port. [Ver] Find PDR
-| | ... | for 64 Byte frames using binary search start at 10GE linerate,
-| | ... | step 50kpps, LT=0.5%.
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-iacldstbase
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-ethip4-ip4base-iacldstbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port. [Ver] Find NDR
-| | ... | for 1518 Byte frames using binary search start at 10GE linerate,
-| | ... | step 50kpps.
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-iacldstbase
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-ethip4-ip4base-iacldstbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port. [Ver] Find PDR
-| | ... | for 1518 Byte frames using binary search start at 10GE linerate,
-| | ... | step 50kpps, LT=0.5%.
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-iacldstbase
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-9000B-1t1c-ethip4-ip4base-iacldstbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port. [Ver] Find NDR
-| | ... | for 9000 Byte frames using binary search start at 10GE linerate,
-| | ... | step 10kpps.
| | [Tags] | 9000B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-iacldstbase
-| | wt=1 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${9000} | search_type=NDR
| tc06-9000B-1t1c-ethip4-ip4base-iacldstbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port. [Ver] Find PDR
-| | ... | for 9000 Byte frames using binary search start at 10GE linerate,
-| | ... | step 10kpps, LT=0.5%.
| | [Tags] | 9000B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-iacldstbase
-| | wt=1 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${9000} | search_type=PDR
| tc07-64B-2t2c-ethip4-ip4base-iacldstbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port. [Ver] Find NDR
-| | ... | for 64 Byte frames using binary search start at 10GE linerate,
-| | ... | step 50kpps.
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-iacldstbase
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-ethip4-ip4base-iacldstbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port. [Ver] Find PDR
-| | ... | for 64 Byte frames using binary search start at 10GE linerate,
-| | ... | step 50kpps, LT=0.5%.
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-iacldstbase
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-ethip4-ip4base-iacldstbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port. [Ver] Find NDR
-| | ... | for 1518 Byte frames using binary search start at 10GE linerate,
-| | ... | step 50kpps.
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-iacldstbase
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-ethip4-ip4base-iacldstbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port. [Ver] Find PDR
-| | ... | for 1518 Byte frames using binary search start at 10GE linerate,
-| | ... | step 50kpps, LT=0.5%.
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-iacldstbase
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-9000B-2t2c-ethip4-ip4base-iacldstbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port. [Ver] Find NDR
-| | ... | for 9000 Byte frames using binary search start at 10GE linerate,
-| | ... | step 10kpps.
| | [Tags] | 9000B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-iacldstbase
-| | wt=2 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${9000} | search_type=NDR
| tc12-9000B-2t2c-ethip4-ip4base-iacldstbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port. [Ver] Find PDR
-| | ... | for 9000 Byte frames using binary search start at 10GE linerate,
-| | ... | step 10kpps, LT=0.5%.
| | [Tags] | 9000B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-iacldstbase
-| | wt=2 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${9000} | search_type=PDR
| tc13-64B-4t4c-ethip4-ip4base-iacldstbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port. [Ver] Find NDR
-| | ... | for 64 Byte frames using binary search start at 10GE linerate,
-| | ... | step 50kpps.
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-iacldstbase
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-ethip4-ip4base-iacldstbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port. [Ver] Find PDR
-| | ... | for 64 Byte frames using binary search start at 10GE linerate,
-| | ... | step 50kpps, LT=0.5%.
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-iacldstbase
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-ethip4-ip4base-iacldstbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port. [Ver] Find NDR
-| | ... | for 1518 Byte frames using binary search start at 10GE linerate,
-| | ... | step 50kpps.
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-iacldstbase
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-ethip4-ip4base-iacldstbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port. [Ver] Find PDR
-| | ... | for 1518 Byte frames using binary search start at 10GE linerate,
-| | ... | step 50kpps, LT=0.5%.
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-iacldstbase
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-9000B-4t4c-ethip4-ip4base-iacldstbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port. [Ver] Find NDR
-| | ... | for 9000 Byte frames using binary search start at 10GE linerate,
-| | ... | step 10kpps.
| | [Tags] | 9000B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-iacldstbase
-| | wt=4 | rxq=2 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${9000} | search_type=NDR
| tc18-9000B-4t4c-ethip4-ip4base-iacldstbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port. [Ver] Find PDR
-| | ... | for 9000 Byte frames using binary search start at 10GE linerate,
-| | ... | step 10kpps, LT=0.5%.
| | [Tags] | 9000B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-iacldstbase
-| | wt=4 | rxq=2 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${9000} | search_type=PDR
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 policer test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Check RR for ethip4-ip4base-ipolicemarkbase
+| Local template
| | ...
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Find NDR or PDR for ${framesize} frames using binary search\
-| | ... | start at 10GE linerate.
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
+| | ... | trial throughput test.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${cb}= | Set Variable If
| | ... | '${framesize}' == 'IMIX_v4_1' | ${1518} | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-ipolicemarkbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 1 \
-| | ... | phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-ipolicemarkbase
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4-ip4base-ipolicemarkbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 1 \
-| | ... | phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-ipolicemarkbase
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4-ip4base-ipolicemarkbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 1 \
-| | ... | phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-ipolicemarkbase
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4-ip4base-ipolicemarkbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 1 \
-| | ... | phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-ipolicemarkbase
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4-ip4base-ipolicemarkbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 2 \
-| | ... | phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-ipolicemarkbase
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4-ip4base-ipolicemarkbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 2 \
-| | ... | phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-ipolicemarkbase
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4-ip4base-ipolicemarkbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 2 \
-| | ... | phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-ipolicemarkbase
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4-ip4base-ipolicemarkbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 2 threada, 2 \
-| | ... | phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-ipolicemarkbase
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4-ip4base-ipolicemarkbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 4 \
-| | ... | phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-ipolicemarkbase
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4-ip4base-ipolicemarkbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 4 \
-| | ... | phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-ipolicemarkbase
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4-ip4base-ipolicemarkbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 4 \
-| | ... | phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-ipolicemarkbase
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4-ip4base-ipolicemarkbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 4 threada, 4 \
-| | ... | phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-ipolicemarkbase
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| Test Teardown | Tear down performance discovery test | ${min_rate}pps
| ... | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Pkt throughput IPv4 policer test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Discover NDR or PDR for ethip4-ip4base-ipolicemarkbase
+| Local template
| | [Documentation]
| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread(s), ${wt}\
| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
| | ... | [Ver] Find NDR or PDR for ${framesize} frames using binary search\
| | ... | start at 10GE linerate.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-ipolicemarkbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 1 \
-| | ... | phy core, 1 receive queue per NIC port. [Ver] Find NDR for 64 \
-| | ... | Byte frames using binary search start at 10GE linerate, step \
-| | ... | 50kpps.
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-ipolicemarkbase
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4-ip4base-ipolicemarkbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 1 \
-| | ... | phy core, 1 receive queue per NIC port. [Ver] Find PDR for 64 \
-| | ... | Byte frames using binary search start at 10GE linerate, step \
-| | ... | 50kpps, LT=0.5%.
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-ipolicemarkbase
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-ethip4-ip4base-ipolicemarkbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 1 \
-| | ... | phy core, 1 receive queue per NIC port. [Ver] Find NDR for 1518 \
-| | ... | Byte frames using binary search start at 10GE linerate, step \
-| | ... | 50kpps.
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-ipolicemarkbase
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-ethip4-ip4base-ipolicemarkbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 1 \
-| | ... | phy core, 1 receive queue per NIC port. [Ver] Find PDR for 1518 \
-| | ... | Byte frames using binary search start at 10GE linerate, step \
-| | ... | 50kpps, LT=0.5%.
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-ipolicemarkbase
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-9000B-1t1c-ethip4-ip4base-ipolicemarkbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 1 \
-| | ... | phy core, 1 receive queue per NIC port. [Ver] Find NDR for 9000 \
-| | ... | Byte frames using binary search start at 10GE linerate, step \
-| | ... | 10kpps.
| | [Tags] | 9000B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-ipolicemarkbase
-| | wt=1 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${9000} | search_type=NDR
| tc06-9000B-1t1c-ethip4-ip4base-ipolicemarkbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 1 \
-| | ... | phy core, 1 receive queue per NIC port. [Ver] Find PDR for 9000 \
-| | ... | Byte frames using binary search start at 10GE linerate, step 10kpps, \
-| | ... | LT=0.5%.
| | [Tags] | 9000B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-ipolicemarkbase
-| | wt=1 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${9000} | search_type=PDR
| tc07-64B-2t2c-ethip4-ip4base-ipolicemarkbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 2 \
-| | ... | phy cores, 1 receive queue per NIC port. [Ver] Find NDR for 64 \
-| | ... | Byte frames using binary search start at 10GE linerate, step \
-| | ... | 50kpps.
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-ipolicemarkbase
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-ethip4-ip4base-ipolicemarkbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 2 \
-| | ... | phy cores, 1 receive queue per NIC port. [Ver] Find PDR for 64 \
-| | ... | Byte frames using binary search start at 10GE linerate, step \
-| | ... | 50kpps, LT=0.5%.
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-ipolicemarkbase
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-ethip4-ip4base-ipolicemarkbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 2 \
-| | ... | phy cores, 1 receive queue per NIC port. [Ver] Find NDR for 1518 \
-| | ... | Byte frames using binary search start at 10GE linerate, step \
-| | ... | 50kpps.
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-ipolicemarkbase
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-ethip4-ip4base-ipolicemarkbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 2 \
-| | ... | phy cores, 1 receive queue per NIC port. [Ver] Find PDR for 1518 \
-| | ... | Byte frames using binary search start at 10GE linerate, step \
-| | ... | 50kpps, LT=0.5%.
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-ipolicemarkbase
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-9000B-2t2c-ethip4-ip4base-ipolicemarkbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 2 \
-| | ... | phy cores, 1 receive queue per NIC port. [Ver] Find NDR for 9000 \
-| | ... | Byte frames using binary search start at 10GE linerate, step \
-| | ... | 10kpps.
| | [Tags] | 9000B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-ipolicemarkbase
-| | wt=2 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${9000} | search_type=NDR
| tc12-9000B-2t2c-ethip4-ip4base-ipolicemarkbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 2 \
-| | ... | phy cores, 1 receive queue per NIC port. [Ver] Find PDR for 9000 \
-| | ... | Byte frames using binary search start at 10GE linerate, step 10kpps, \
-| | ... | LT=0.5%.
| | [Tags] | 9000B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-ipolicemarkbase
-| | wt=2 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${9000} | search_type=PDR
| tc13-64B-4t4c-ethip4-ip4base-ipolicemarkbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 4 \
-| | ... | phy cores, 2 receive queue per NIC port. [Ver] Find NDR for 64 \
-| | ... | Byte frames using binary search start at 10GE linerate, step \
-| | ... | 50kpps.
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-ipolicemarkbase
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-ethip4-ip4base-ipolicemarkbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 4 \
-| | ... | phy cores, 2 receive queue per NIC port. [Ver] Find PDR for 64 \
-| | ... | Byte frames using binary search start at 10GE linerate, step \
-| | ... | 50kpps, LT=0.5%.
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-ipolicemarkbase
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-ethip4-ip4base-ipolicemarkbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 4 \
-| | ... | phy cores, 2 receive queue per NIC port. [Ver] Find NDR for 1518 \
-| | ... | Byte frames using binary search start at 10GE linerate, step \
-| | ... | 50kpps.
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-ipolicemarkbase
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-ethip4-ip4base-ipolicemarkbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 4 \
-| | ... | phy cores, 2 receive queue per NIC port. [Ver] Find PDR for 1518 \
-| | ... | Byte frames using binary search start at 10GE linerate, step \
-| | ... | 50kpps, LT=0.5%.
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-ipolicemarkbase
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-9000B-4t4c-ethip4-ip4base-ipolicemarkbase-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 4 \
-| | ... | phy cores, 2 receive queue per NIC port. [Ver] Find NDR for 9000 \
-| | ... | Byte frames using binary search start at 10GE linerate, step \
-| | ... | 10kpps.
| | [Tags] | 9000B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-ipolicemarkbase
-| | wt=4 | rxq=2 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${9000} | search_type=NDR
| tc18-9000B-4t4c-ethip4-ip4base-ipolicemarkbase-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 4 \
-| | ... | phy cores, 2 receive queue per NIC port. [Ver] Find PDR for 9000 \
-| | ... | Byte frames using binary search start at 10GE linerate, step 10kpps, \
-| | ... | LT=0.5%.
| | [Tags] | 9000B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-ipolicemarkbase
-| | wt=4 | rxq=2 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${9000} | search_type=PDR
| Test Setup | Set up performance test
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 routing test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Check RR for ethip4-ip4base
-| | ...
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| Test Teardown | Tear down performance discovery test | ${min_rate}pps
| ... | ${framesize} | ${traffic_profile}
| ...
-| Test Template | Discover NDRPDR for ethip4-ip4base
+| Test Template | Local template
*** Variables ***
# X520-DA2 bandwidth limit
| ${traffic_profile} | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Discover NDRPDR for ethip4-ip4base
+| Local template
| | [Documentation]
| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread(s), ${wt}\
| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
| | ... | [Ver] Find NDR and PDR for ${framesize} frames using optimized search\
| | ... | start at 10GE linerate.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate} | ${20000}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_uniditrectional_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ${max_rate}= | Evaluate | 2*${max_uniditrectional_rate}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-ndrpdr
| | [Tags] | 64B | 1C
-| | ...
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4-ip4base-ndrpdr
| | [Tags] | 1518B | 1C
-| | ...
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4-ip4base-ndrpdr
| | [Tags] | 1518B | 1C
-| | ...
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4-ip4base-ndrpdr
| | [Tags] | IMIX | 1C
-| | ...
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4-ip4base-ndrpdr
| | [Tags] | 64B | 2C
-| | ...
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4-ip4base-ndrpdr
| | [Tags] | 1518B | 2C
-| | ...
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4-ip4base-ndrpdr
| | [Tags] | 9000B | 2C
-| | ...
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4-ip4base-ndrpdr
| | [Tags] | IMIX | 2C
-| | ...
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4-ip4base-ndrpdr
| | [Tags] | 64B | 4C
-| | ...
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4-ip4base-ndrpdr
| | [Tags] | 1518B | 4C
-| | ...
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4-ip4base-ndrpdr
| | [Tags] | 9000B | 4C
-| | ...
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4-ip4base-ndrpdr
| | [Tags] | IMIX | 4C
-| | ...
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| Test Teardown | Tear down performance discovery test | ${min_rate}pps
| ... | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Pkt throughput IPv4 routing test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Discover NDR or PDR for ethip4-ip4base
+| Local template
| | [Documentation]
| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread(s), ${wt}\
| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
| | ... | [Ver] Find NDR or PDR for ${framesize} frames using binary search\
| | ... | start at 10GE linerate.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port. [Ver] Find NDR for 64 Byte frames
-| | ... | using binary search start at 10GE linerate, step 50kpps.
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4-ip4base-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port. [Ver] Find PDR for 64 Byte frames
-| | ... | using binary search start at 10GE linerate, step 50kpps, LT=0.5%.
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-ethip4-ip4base-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port. [Ver] Find NDR for 1518 Byte frames
-| | ... | using binary search start at 10GE linerate, step 50kpps.
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-ethip4-ip4base-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port. [Ver] Find PDR for 1518 Byte frames
-| | ... | using binary search start at 10GE linerate, step 50kpps, LT=0.5%.
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-9000B-1t1c-ethip4-ip4base-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port. [Ver] Find NDR for 9000 Byte frames
-| | ... | using binary search start at 10GE linerate, step 10kpps.
| | [Tags] | 9000B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base
-| | wt=1 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${9000} | search_type=NDR
| tc06-9000B-1t1c-ethip4-ip4base-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port. [Ver] Find PDR for 9000 Byte frames
-| | ... | using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
| | [Tags] | 9000B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base
-| | wt=1 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${9000} | search_type=PDR
| tc07-64B-2t2c-ethip4-ip4base-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port. [Ver] Find NDR for 64 Byte frames
-| | ... | using binary search start at 10GE linerate, step 50kpps.
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-ethip4-ip4base-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port. [Ver] Find PDR for 64 Byte frames
-| | ... | using binary search start at 10GE linerate, step 50kpps, LT=0.5%.
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-ethip4-ip4base-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port. [Ver] Find NDR for 1518 Byte frames
-| | ... | using binary search start at 10GE linerate, step 50kpps.
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-ethip4-ip4base-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port. [Ver] Find PDR for 1518 Byte frames
-| | ... | using binary search start at 10GE linerate, step 50kpps, LT=0.5%.
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-9000B-2t2c-ethip4-ip4base-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port. [Ver] Find NDR for 9000 Byte frames
-| | ... | using binary search start at 10GE linerate, step 10kpps.
| | [Tags] | 9000B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base
-| | wt=2 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${9000} | search_type=NDR
| tc12-9000B-2t2c-ethip4-ip4base-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port. [Ver] Find PDR for 9000 Byte frames
-| | ... | using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
| | [Tags] | 9000B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base
-| | wt=2 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${9000} | search_type=PDR
| tc13-64B-4t4c-ethip4-ip4base-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port. [Ver] Find NDR for 64 Byte frames
-| | ... | using binary search start at 10GE linerate, step 50kpps.
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-ethip4-ip4base-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port. [Ver] Find PDR for 64 Byte frames
-| | ... | using binary search start at 10GE linerate, step 50kpps, LT=0.5%.
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-ethip4-ip4base-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port. [Ver] Find NDR for 1518 Byte frames
-| | ... | using binary search start at 10GE linerate, step 50kpps.
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-ethip4-ip4base-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port. [Ver] Find PDR for 1518 Byte frames
-| | ... | using binary search start at 10GE linerate, step 50kpps, LT=0.5%.
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-9000B-4t4c-ethip4-ip4base-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port. [Ver] Find NDR for 9000 Byte frames
-| | ... | using binary search start at 10GE linerate, step 10kpps.
| | [Tags] | 9000B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base
-| | wt=4 | rxq=2 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${9000} | search_type=NDR
| tc18-9000B-4t4c-ethip4-ip4base-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port. [Ver] Find PDR for 9000 Byte frames
-| | ... | using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
| | [Tags] | 9000B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base
-| | wt=4 | rxq=2 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${9000} | search_type=PDR
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 routing test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${rts_per_flow}
*** Keywords ***
-| Check RR for ethip4-ip4scale200k
+| Local template
| | ...
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale200k
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4-ip4scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale200k
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4-ip4scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale200k
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4-ip4scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale200k
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4-ip4scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale200k
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4-ip4scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale200k
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4-ip4scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale200k
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4-ip4scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale200k
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4-ip4scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale200k
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4-ip4scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale200k
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4-ip4scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale200k
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4-ip4scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale200k
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv4 forwarding with scaling in 3-node circular topology
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv4 forwarding with scaling in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv4 forwarding with scaling in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv4 forwarding with scaling in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv4 forwarding with scaling in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv4 forwarding with scaling in 3-node circular topology
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 routing test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${rts_per_flow}
*** Keywords ***
-| Check RR for ethip4-ip4scale20k
-| | ...
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale20k
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4-ip4scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale20k
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4-ip4scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale20k
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4-ip4scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale20k
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4-ip4scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale20k
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4-ip4scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale20k
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4-ip4scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale20k
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4-ip4scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale20k
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4-ip4scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale20k
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4-ip4scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale20k
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4-ip4scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale20k
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4-ip4scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale20k
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv4 forwarding with scaling in 3-node circular topology
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv4 forwarding with scaling in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv4 forwarding with scaling in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv4 forwarding with scaling in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv4 forwarding with scaling in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv4 forwarding with scaling in 3-node circular topology
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 routing test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${rts_per_flow}
*** Keywords ***
-| Check RR for ethip4-ip4scale2m
+| Local template
| | ...
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale2m
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4-ip4scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale2m
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4-ip4scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale2m
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4-ip4scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale2m
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4-ip4scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale2m
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4-ip4scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale2m
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4-ip4scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale2m
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4-ip4scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale2m
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4-ip4scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale2m
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4-ip4scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale2m
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4-ip4scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale2m
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4-ip4scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale2m
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv4 forwarding with scaling in 3-node circular topology
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv4 forwarding with scaling in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv4 forwarding with scaling in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv4 forwarding with scaling in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv4 forwarding with scaling in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv4 forwarding with scaling in 3-node circular topology
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-iacl10-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-iacl10-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-iacl10-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-iacl10-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-iacl10-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-iacl10-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-iacl10-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-iacl10-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-iacl10-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-iacl10-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-iacl10-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-iacl10-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-iacl10-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-iacl10-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-iacl10-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-iacl10-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-iacl10-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-iacl10-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-iacl10-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-iacl10-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-iacl10-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-iacl10-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-iacl10-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-iacl10-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-iacl10-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-iacl10-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-iacl10-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-iacl10-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-iacl10-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-iacl10-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-iacl10-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-iacl10-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-iacl10-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-iacl10-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-iacl10-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-iacl10-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-iacl1-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-iacl1-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-iacl1-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-iacl1-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-iacl1-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-iacl1-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-iacl1-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-iacl1-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-iacl1-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-iacl1-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-iacl1-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-iacl1-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Check RR for IPv4 routing with ACLs
-| | ...
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with ${wt} thread(s),\
-| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config with ACL.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4udp-ip4base-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4udp-ip4base-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4udp-ip4base-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4udp-ip4base-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4udp-ip4base-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4udp-ip4base-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4udp-ip4base-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4udp-ip4base-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4udp-ip4base-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4udp-ip4base-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4udp-ip4base-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-iacl1-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-iacl1-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-iacl1-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-iacl1-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-iacl1-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-iacl1-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-iacl1-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-iacl1-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-iacl1-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-iacl1-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-iacl1-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-iacl1-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-iacl1-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-iacl1-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-iacl1-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-iacl1-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-iacl1-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-iacl1-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Check RR for IPv4 routing with ACLs
+| Local template
| | ...
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with ${wt} thread(s),\
-| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config with ACL.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4udp-ip4base-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4udp-ip4base-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4udp-ip4base-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4udp-ip4base-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4udp-ip4base-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4udp-ip4base-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4udp-ip4base-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4udp-ip4base-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4udp-ip4base-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4udp-ip4base-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4udp-ip4base-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-iacl1-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-iacl1-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-iacl1-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-iacl1-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-iacl1-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-iacl1-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-iacl50-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-iacl50-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-iacl50-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-iacl50-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-ip4base-iacl50-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-ip4base-iacl50-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-iacl50-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-iacl50-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-iacl50-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-iacl50-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-iacl50-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-iacl50-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Check RR for IPv4 routing with ACLs
+| Local template
| | ...
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with ${wt} thread(s),\
-| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config with ACL.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4udp-ip4base-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4udp-ip4base-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4udp-ip4base-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4udp-ip4base-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4udp-ip4base-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4udp-ip4base-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4udp-ip4base-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4udp-ip4base-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4udp-ip4base-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4udp-ip4base-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4udp-ip4base-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-iacl50-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-iacl50-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-iacl50-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-iacl50-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-iacl50-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-iacl50-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-iacl50-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-iacl50-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-iacl50-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-iacl50-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-iacl50-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-iacl50-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-iacl50-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-iacl50-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-iacl50-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-iacl50-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-iacl50-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-iacl50-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Check RR for IPv4 routing with ACLs
+| Local template
| | ...
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with ${wt} thread(s),\
-| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config with ACL.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4udp-ip4base-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4udp-ip4base-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4udp-ip4base-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4udp-ip4base-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4udp-ip4base-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4udp-ip4base-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4udp-ip4base-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4udp-ip4base-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4udp-ip4base-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4udp-ip4base-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4udp-ip4base-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-iacl50-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-iacl50-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-iacl50-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-iacl50-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-iacl50-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-iacl50-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *NAT44 performance test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4udp-1u1p
*** Keywords ***
-| Check RR for IPv4 routing with NAT44
+| Local template
| | ...
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port. NAT44 is\
-| | ... | configured between DUTs - 1 user and 1 port (session) per user.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-snat-1u-1p-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4-ip4base-snat-1u-1p-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4-ip4base-snat-1u-1p-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4-ip4base-snat-1u-1p-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4-ip4base-snat-1u-1p-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4-ip4base-snat-1u-1p-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4-ip4base-snat-1u-1p-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4-ip4base-snat-1u-1p-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4-ip4base-snat-1u-1p-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4-ip4base-snat-1u-1p-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4-ip4base-snat-1u-1p-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4-ip4base-snat-1u-1p-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| Test Teardown | Tear down performance discovery test with NAT
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *NAT44 performance test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip4udp-1u1p
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with NAT44
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-snat-1u-1p-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4-ip4base-snat-1u-1p-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-ethip4-ip4base-snat-1u-1p-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-ethip4-ip4base-snat-1u-1p-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-ethip4-ip4base-snat-1u-1p-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-ethip4-ip4base-snat-1u-1p-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Find PDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-ethip4-ip4base-snat-1u-1p-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-ethip4-ip4base-snat-1u-1p-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | 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
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-ethip4-ip4base-snat-1u-1p-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-ethip4-ip4base-snat-1u-1p-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 2C | 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
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-IMIX-2t2c-ethip4-ip4base-snat-1u-1p-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 2C | 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
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc12-IMIX-2t2c-ethip4-ip4base-snat-1u-1p-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Find PDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 2C | 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
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc13-64B-4t4c-ethip4-ip4base-snat-1u-1p-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-ethip4-ip4base-snat-1u-1p-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | 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
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-ethip4-ip4base-snat-1u-1p-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-ethip4-ip4base-snat-1u-1p-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 4C | 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
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-IMIX-4t4c-ethip4-ip4base-snat-1u-1p-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 4C | 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
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc18-IMIX-4t4c-ethip4-ip4base-snat-1u-1p-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Find PDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 4C | 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
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-oacl10-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-oacl10-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-oacl10-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-oacl10-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-oacl10-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-oacl10-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-oacl10-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-oacl10-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-oacl10-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-oacl10-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-oacl10-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-oacl10-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-oacl10-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-oacl10-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-oacl10-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-oacl10-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-oacl10-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-oacl10-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-oacl10-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-oacl10-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-oacl10-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-oacl10-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-oacl10-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-oacl10-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-oacl10-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-oacl10-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-oacl10-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-oacl10-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-oacl10-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-oacl10-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-oacl10-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-oacl10-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-oacl10-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-oacl10-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-oacl10-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-oacl10-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-oacl1-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-oacl1-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-oacl1-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-oacl1-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-oacl1-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-oacl1-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-oacl1-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-oacl1-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-oacl1-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-oacl1-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-oacl1-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-oacl1-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-oacl1-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-oacl1-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-oacl1-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-oacl1-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-oacl1-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-oacl1-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-oacl1-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-oacl1-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-oacl1-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-oacl1-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-oacl1-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-oacl1-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-oacl1-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-oacl1-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-oacl1-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-oacl1-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-oacl1-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-oacl1-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-oacl1-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-oacl1-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-oacl1-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-oacl1-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-oacl1-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-oacl1-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-oacl50-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-oacl50-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-oacl50-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-oacl50-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-oacl50-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-oacl50-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-oacl50-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-oacl50-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-oacl50-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-oacl50-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-oacl50-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-oacl50-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-oacl50-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-oacl50-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-oacl50-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-oacl50-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-oacl50-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-oacl50-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-oacl50-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-oacl50-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-oacl50-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-oacl50-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-oacl50-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-oacl50-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-oacl50-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-oacl50-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-oacl50-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-oacl50-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-oacl50-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-oacl50-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-oacl50-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-oacl50-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-ethip4udp-ip4base-oacl50-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-ethip4udp-ip4base-oacl50-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-ethip4udp-ip4base-oacl50-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-ethip4udp-ip4base-oacl50-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance discovery test with NAT
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *NAT44 performance test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip4udp-1u15p
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with NAT44
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 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 | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4base-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 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 | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-ethip4udp-ip4base-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 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 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-ethip4udp-ip4base-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 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 | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-ethip4udp-ip4base-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 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 IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-ethip4udp-ip4base-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 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 | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-ethip4udp-ip4base-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 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 | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-ethip4udp-ip4base-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 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 | 2C | 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
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-ethip4udp-ip4base-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 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 | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-ethip4udp-ip4base-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 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 | 2C | 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
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-IMIX-2t2c-ethip4udp-ip4base-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 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 | 2C | 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
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc12-IMIX-2t2c-ethip4udp-ip4base-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 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 | 2C | 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
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc13-64B-4t4c-ethip4udp-ip4base-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 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 | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-ethip4udp-ip4base-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 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 | 4C | 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
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-ethip4udp-ip4base-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 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 | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-ethip4udp-ip4base-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 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 | 4C | 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
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-IMIX-4t4c-ethip4udp-ip4base-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 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 | 4C | 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
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc18-IMIX-4t4c-ethip4udp-ip4base-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 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 | 4C | 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
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| Test Teardown | Tear down performance discovery test with NAT
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *NAT44 performance test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip4udp-10u15p
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with NAT44
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4scale10-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 10 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4scale10-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 10 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-ethip4udp-ip4scale10-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 10 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-ethip4udp-ip4scale10-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 10 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-ethip4udp-ip4scale10-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 10 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-ethip4udp-ip4scale10-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 10 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-ethip4udp-ip4scale10-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 10 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-ethip4udp-ip4scale10-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 10 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | 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
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-ethip4udp-ip4scale10-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 10 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-ethip4udp-ip4scale10-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 10 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 2C | 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
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-IMIX-2t2c-ethip4udp-ip4scale10-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 10 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 2C | 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
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc12-IMIX-2t2c-ethip4udp-ip4scale10-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 10 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 2C | 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
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc13-64B-4t4c-ethip4udp-ip4scale10-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 10 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-ethip4udp-ip4scale10-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 10 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | 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
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-ethip4udp-ip4scale10-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 10 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-ethip4udp-ip4scale10-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 10 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 4C | 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
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-IMIX-4t4c-ethip4udp-ip4scale10-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 10 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 4C | 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
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc18-IMIX-4t4c-ethip4udp-ip4scale10-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 10 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 4C | 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
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| Test Teardown | Tear down performance discovery test with NAT
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *NAT44 performance test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip4udp-100u15p
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with NAT44
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4scale100-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 100 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4scale100-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 100 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-ethip4udp-ip4scale100-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 100 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-ethip4udp-ip4scale100-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 100 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-ethip4udp-ip4scale100-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 100 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-ethip4udp-ip4scale100-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 100 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-ethip4udp-ip4scale100-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 100 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-ethip4udp-ip4scale100-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 100 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | 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
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-ethip4udp-ip4scale100-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 100 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-ethip4udp-ip4scale100-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 100 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 2C | 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
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-IMIX-2t2c-ethip4udp-ip4scale100-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 100 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 2C | 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
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc12-IMIX-2t2c-ethip4udp-ip4scale100-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 100 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 2C | 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
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc13-64B-4t4c-ethip4udp-ip4scale100-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 100 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-ethip4udp-ip4scale100-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 100 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | 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
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-ethip4udp-ip4scale100-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 100 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-ethip4udp-ip4scale100-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 100 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 4C | 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
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-IMIX-4t4c-ethip4udp-ip4scale100-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 100 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 4C | 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
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc18-IMIX-4t4c-ethip4udp-ip4scale100-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 100 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 4C | 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
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results NAT44 performance test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4udp-1000u15p
*** Keywords ***
-| Check RR for IPv4 routing with NAT44
+| Local template
| | ...
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.NAT44 is configured\
-| | ... | between DUTs - 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
| | Set Test Variable | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4scale1000-udpsrcscale15-snat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4udp-ip4scale1000-udpsrcscale15-snat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4udp-ip4scale1000-udpsrcscale15-snat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4udp-ip4scale1000-udpsrcscale15-snat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4udp-ip4scale1000-udpsrcscale15-snat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4udp-ip4scale1000-udpsrcscale15-snat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4udp-ip4scale1000-udpsrcscale15-snat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4udp-ip4scale1000-udpsrcscale15-snat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4udp-ip4scale1000-udpsrcscale15-snat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4udp-ip4scale1000-udpsrcscale15-snat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4udp-ip4scale1000-udpsrcscale15-snat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4udp-ip4scale1000-udpsrcscale15-snat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| Test Teardown | Tear down performance discovery test with NAT
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *NAT44 performance test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip4udp-1000u15p
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with NAT44
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4scale1000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4scale1000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-ethip4udp-ip4scale1000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-ethip4udp-ip4scale1000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-ethip4udp-ip4scale1000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-ethip4udp-ip4scale1000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-ethip4udp-ip4scale1000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-ethip4udp-ip4scale1000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | 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
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-ethip4udp-ip4scale1000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-ethip4udp-ip4scale1000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 2C | 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
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-IMIX-2t2c-ethip4udp-ip4scale1000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 2C | 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
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc12-IMIX-2t2c-ethip4udp-ip4scale1000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 2C | 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
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc13-64B-4t4c-ethip4udp-ip4scale1000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-ethip4udp-ip4scale1000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | 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
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-ethip4udp-ip4scale1000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-ethip4udp-ip4scale1000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 4C | 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
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-IMIX-4t4c-ethip4udp-ip4scale1000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 4C | 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
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc18-IMIX-4t4c-ethip4udp-ip4scale1000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 4C | 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
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| Test Teardown | Tear down performance discovery test with NAT
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *NAT44 performance test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip4udp-2000u15p
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with NAT44
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4scale2000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 2000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4scale2000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 2000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-ethip4udp-ip4scale2000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 2000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-ethip4udp-ip4scale2000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 2000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-ethip4udp-ip4scale2000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 2000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-ethip4udp-ip4scale2000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 2000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-ethip4udp-ip4scale2000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 2000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-ethip4udp-ip4scale2000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 2000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | 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
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-ethip4udp-ip4scale2000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 2000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-ethip4udp-ip4scale2000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 2000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 2C | 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
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-IMIX-2t2c-ethip4udp-ip4scale2000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 2000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 2C | 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
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc12-IMIX-2t2c-ethip4udp-ip4scale2000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 2000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 2C | 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
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc13-64B-4t4c-ethip4udp-ip4scale2000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 2000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-ethip4udp-ip4scale2000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 2000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | 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
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-ethip4udp-ip4scale2000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 2000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-ethip4udp-ip4scale2000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 2000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 4C | 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
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-IMIX-4t4c-ethip4udp-ip4scale2000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 2000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 4C | 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
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc18-IMIX-4t4c-ethip4udp-ip4scale2000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 2000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 4C | 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
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| Test Teardown | Tear down performance discovery test with NAT
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *NAT44 performance test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip4udp-4000u15p
*** Keywords ***
-| Discover NDR or PDR for IPv4 routing with NAT44
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${rxq}=${None} | ${min_rate}=${50000}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4scale4000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 4000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4udp-ip4scale4000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 4000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-ethip4udp-ip4scale4000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 4000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-ethip4udp-ip4scale4000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 4000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-ethip4udp-ip4scale4000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 4000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-ethip4udp-ip4scale4000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 4000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-ethip4udp-ip4scale4000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 4000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-ethip4udp-ip4scale4000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 4000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | 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
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-ethip4udp-ip4scale4000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 4000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-ethip4udp-ip4scale4000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 4000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 2C | 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
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-IMIX-2t2c-ethip4udp-ip4scale4000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 4000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 2C | 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
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc12-IMIX-2t2c-ethip4udp-ip4scale4000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 4000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 2C | 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
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc13-64B-4t4c-ethip4udp-ip4scale4000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 4000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-ethip4udp-ip4scale4000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 4000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | 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
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-ethip4udp-ip4scale4000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 4000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-ethip4udp-ip4scale4000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 4000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 4C | 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
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-IMIX-4t4c-ethip4udp-ip4scale4000-udpsrcscale15-snat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 4000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 4C | 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
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc18-IMIX-4t4c-ethip4udp-ip4scale4000-udpsrcscale15-snat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 4000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Find PDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | IMIX | 4C | 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
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 whitelist test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Check RR for ethip4-ip4base-copwhtlistbase
+| Local template
| | ...
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-copwhtlistbase
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4-ip4base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-copwhtlistbase
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4-ip4base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-copwhtlistbase
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4-ip4base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-copwhtlistbase
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4-ip4base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-copwhtlistbase
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4-ip4base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-copwhtlistbase
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4-ip4base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-copwhtlistbase
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4-ip4base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-copwhtlistbase
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4-ip4base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-copwhtlistbase
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4-ip4base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-copwhtlistbase
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4-ip4base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-copwhtlistbase
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4-ip4base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-copwhtlistbase
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 iAcl whitelist test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Check RR for ethip4-ip4base-iacldstbase
+| Local template
| | ...
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-iacldstbase
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4-ip4base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-iacldstbase
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4-ip4base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1CC
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-iacldstbase
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4-ip4base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-iacldstbase
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4-ip4base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-iacldstbase
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4-ip4base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-iacldstbase
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4-ip4base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-iacldstbase
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4-ip4base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-iacldstbase
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4-ip4base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-iacldstbase
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4-ip4base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-iacldstbase
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4-ip4base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-iacldstbase
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4-ip4base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-iacldstbase
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 policer test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Check RR for ethip4-ip4base-ipolicemarkbase
+| Local template
| | ...
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Find NDR or PDR for ${framesize} frames using binary search\
-| | ... | start at 10GE linerate.
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
+| | ... | trial throughput test.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${cb}= | Set Variable If
| | ... | '${framesize}' == 'IMIX_v4_1' | ${1518} | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-ipolicemarkbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 1 \
-| | ... | phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-ipolicemarkbase
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4-ip4base-ipolicemarkbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 1 \
-| | ... | phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-ipolicemarkbase
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4-ip4base-ipolicemarkbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 1 \
-| | ... | phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-ipolicemarkbase
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4-ip4base-ipolicemarkbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 1 \
-| | ... | phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-ipolicemarkbase
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4-ip4base-ipolicemarkbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 2 \
-| | ... | phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-ipolicemarkbase
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4-ip4base-ipolicemarkbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 2 \
-| | ... | phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-ipolicemarkbase
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4-ip4base-ipolicemarkbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 2 \
-| | ... | phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-ipolicemarkbase
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4-ip4base-ipolicemarkbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 2 threada, 2 \
-| | ... | phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-ipolicemarkbase
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4-ip4base-ipolicemarkbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 4 \
-| | ... | phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-ipolicemarkbase
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4-ip4base-ipolicemarkbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 4 \
-| | ... | phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-ipolicemarkbase
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4-ip4base-ipolicemarkbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 4 \
-| | ... | phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-ipolicemarkbase
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4-ip4base-ipolicemarkbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing and policer config with 4 threada, 4 \
-| | ... | phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-ipolicemarkbase
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| Test Setup | Set up performance test
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 routing test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Check RR for ethip4-ip4base
+| Local template
| | ...
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 routing test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${rts_per_flow}
*** Keywords ***
-| Check RR for ethip4-ip4scale200k
+| Local template
| | ...
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale200k
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4-ip4scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale200k
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4-ip4scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale200k
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4-ip4scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale200k
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4-ip4scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale200k
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4-ip4scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale200k
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4-ip4scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale200k
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4-ip4scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale200k
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4-ip4scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale200k
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4-ip4scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale200k
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4-ip4scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale200k
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4-ip4scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale200k
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 routing test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${rts_per_flow}
*** Keywords ***
-| Check RR for ethip4-ip4scale20k
+| Local template
| | ...
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale20k
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4-ip4scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale20k
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4-ip4scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale20k
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4-ip4scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale20k
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4-ip4scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale20k
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4-ip4scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale20k
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4-ip4scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale20k
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4-ip4scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale20k
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4-ip4scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale20k
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4-ip4scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale20k
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4-ip4scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale20k
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4-ip4scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale20k
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 routing test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4dst${rts_per_flow}
*** Keywords ***
-| Check RR for ethip4-ip4scale2m
+| Local template
| | ...
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale2m
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4-ip4scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale2m
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4-ip4scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale2m
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4-ip4scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale2m
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4-ip4scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale2m
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4-ip4scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale2m
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4-ip4scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale2m
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4-ip4scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale2m
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4-ip4scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale2m
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4-ip4scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale2m
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4-ip4scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale2m
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4-ip4scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4scale2m
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Check RR for IPv4 routing with ACLs
+| Local template
| | ...
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with ${wt} thread(s),\
-| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4udp-ip4base-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4udp-ip4base-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4udp-ip4base-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4udp-ip4base-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4udp-ip4base-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4udp-ip4base-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4udp-ip4base-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4udp-ip4base-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4udp-ip4base-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4udp-ip4base-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4udp-ip4base-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Check RR for IPv4 routing with ACLs
+| Local template
| | ...
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with ${wt} thread(s),\
-| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4udp-ip4base-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4udp-ip4base-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4udp-ip4base-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4udp-ip4base-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4udp-ip4base-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4udp-ip4base-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4udp-ip4base-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4udp-ip4base-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4udp-ip4base-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4udp-ip4base-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4udp-ip4base-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Check RR for IPv4 routing with ACLs
+| Local template
| | ...
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with ${wt} thread(s),\
-| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4udp-ip4base-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4udp-ip4base-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4udp-ip4base-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4udp-ip4base-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4udp-ip4base-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4udp-ip4base-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4udp-ip4base-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4udp-ip4base-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4udp-ip4base-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4udp-ip4base-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4udp-ip4base-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Check RR for IPv4 routing with ACLs
+| Local template
| | ...
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with ${wt} thread(s),\
-| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4base-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4udp-ip4base-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4udp-ip4base-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4udp-ip4base-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4udp-ip4base-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4udp-ip4base-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4udp-ip4base-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4udp-ip4base-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4udp-ip4base-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4udp-ip4base-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4udp-ip4base-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4udp-ip4base-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with ACLs
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *NAT44 performance test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4udp-1u1p
*** Keywords ***
-| Check RR for IPv4 routing with NAT44
+| Local template
| | ...
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port. NAT44 is\
-| | ... | configured between DUTs - 1 user and 1 port (session) per user.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-snat-1u-1p-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4-ip4base-snat-1u-1p-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4-ip4base-snat-1u-1p-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4-ip4base-snat-1u-1p-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4-ip4base-snat-1u-1p-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4-ip4base-snat-1u-1p-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4-ip4base-snat-1u-1p-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4-ip4base-snat-1u-1p-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4-ip4base-snat-1u-1p-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4-ip4base-snat-1u-1p-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4-ip4base-snat-1u-1p-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4-ip4base-snat-1u-1p-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1 user and 1 port (session) per user.
-| | ... | [Ver] Find NDR for IMIX frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results NAT44 performance test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4udp-1000u15p
*** Keywords ***
-| Check RR for IPv4 routing with NAT44
+| Local template
| | ...
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.NAT44 is configured\
-| | ... | between DUTs - 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
| | Set Test Variable | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4udp-ip4scale1000-udpsrcscale15-snat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4udp-ip4scale1000-udpsrcscale15-snat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4udp-ip4scale1000-udpsrcscale15-snat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4udp-ip4scale1000-udpsrcscale15-snat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4udp-ip4scale1000-udpsrcscale15-snat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4udp-ip4scale1000-udpsrcscale15-snat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4udp-ip4scale1000-udpsrcscale15-snat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4udp-ip4scale1000-udpsrcscale15-snat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4udp-ip4scale1000-udpsrcscale15-snat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4udp-ip4scale1000-udpsrcscale15-snat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4udp-ip4scale1000-udpsrcscale15-snat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4udp-ip4scale1000-udpsrcscale15-snat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port. NAT44 is configured between DUTs -\
-| | ... | 1000 users and 15 ports (sessions) per user.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv4 routing with NAT44
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| Test Setup | Set up performance test
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 routing test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Check RR for ethip4-ip4base
+| Local template
| | ...
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_24.5G} | ${get_framesize}
| | ${max_rate}= | Set Variable If
| | ... | ${max_rate} > ${s_18.75Mpps} | ${s_18.75Mpps} | ${max_rate}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add DPDK dev default RXD to all DUTs | 2048
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results Lisp test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Check RR for ethip4lispip4-ip4base
-| | ...
+| Local template
| | [Documentation]
| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist filters\
-| | ... | config with ${wt} thread(s), ${wt} phy core(s), ${rxq} receive\
-| | ... | queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ... | ${get_framesize + ${lisp_overhead}}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize + ${lisp_overhead}} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4lispip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist\
-| | ... | filters config with 1 phy core, 1 receive queue per NIC\
-| | ... | port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4lispip4-ip4base
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1480B-1t1c-ethip4lispip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist\
-| | ... | filters config with 1 phy core, 1 receive queue per NIC\
-| | ... | port.
-| | ... | [Ver] Measure MaxReceivedRate for 1480B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1480B | 1C
-| | ...
-| | [Template] | Check RR for ethip4lispip4-ip4base
-| | wt=1 | rxq=1 | framesize=${1480}
+| | phy_cores=${1} | framesize=${1480}
| tc03-9000B-1t1c-ethip4lispip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist\
-| | ... | filters config with 1 phy core, 1 receive queue per NIC\
-| | ... | port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip4lispip4-ip4base
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4lispip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist\
-| | ... | filters config with 1 phy core, 1 receive queue per NIC\
-| | ... | port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4lispip4-ip4base
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4lispip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist\
-| | ... | filters config with 2 phy cores, 1 receive queue per NIC\
-| | ... | port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4lispip4-ip4base
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1480B-2t2c-ethip4lispip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist\
-| | ... | filters config with 2 phy cores, 1 receive queue per NIC\
-| | ... | port.
-| | ... | [Ver] Measure MaxReceivedRate for 1480B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1480B | 2C
-| | ...
-| | [Template] | Check RR for ethip4lispip4-ip4base
-| | wt=2 | rxq=1 | framesize=${1480}
+| | phy_cores=${2} | framesize=${1480}
| tc07-9000B-2t2c-ethip4lispip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist\
-| | ... | filters config with 2 phy cores, 1 receive queue per NIC\
-| | ... | port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip4lispip4-ip4base
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4lispip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist\
-| | ... | filters config with 2 phy cores, 1 receive queue per NIC\
-| | ... | port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4lispip4-ip4base
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4lispip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist\
-| | ... | filters config with 4 phy cores, 2 receive queues per NIC\
-| | ... | port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4lispip4-ip4base
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1480B-4t4c-ethip4lispip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist\
-| | ... | filters config with 4 phy cores, 2 receive queues per NIC\
-| | ... | port.
-| | ... | [Ver] Measure MaxReceivedRate for 1480B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1480B | 4C
-| | ...
-| | [Template] | Check RR for ethip4lispip4-ip4base
-| | wt=4 | rxq=2 | framesize=${1480}
+| | phy_cores=${4} | framesize=${1480}
| tc11-9000B-4t4c-ethip4lispip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist\
-| | ... | filters config with 4 phy cores, 2 receive queues per NIC\
-| | ... | port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip4lispip4-ip4base
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4lispip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist\
-| | ... | filters config with 4 phy cores, 2 receive queues per NIC\
-| | ... | port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4lispip4-ip4base
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize LISP IPv4 forwarding in 3-node circular topology
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize LISP IPv4 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize LISP IPv4 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize LISP IPv4 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize LISP IPv4 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize LISP IPv4 forwarding in 3-node circular topology
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize LISP IPv4 over IPv6 forwarding in 3-node circular topology
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize LISP IPv4 over IPv6 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize LISP IPv4 over IPv6 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize LISP IPv4 over IPv6 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize LISP IPv4 over IPv6 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize LISP IPv4 over IPv6 forwarding in 3-node circular topology
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD with VXLANoIPv4 test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for ethip4vxlan-l2bdbasemaclrn
+| Local template
| | ...
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD forwarding config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD forwarding config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ... | ${get_framesize + ${vxlan_overhead}}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize + ${vxlan_overhead}} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4vxlan-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD forwarding config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4vxlan-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD forwarding config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4vxlan-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD forwarding config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4vxlan-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD forwarding config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4vxlan-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD forwarding config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4vxlan-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD forwarding config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C | SKIP_PATCH
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4vxlan-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD forwarding config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 2C | SKIP_PATCH
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4vxlan-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD forwarding config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4vxlan-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD forwarding config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4vxlan-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD forwarding config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C | SKIP_PATCH
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4vxlan-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD forwarding config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 4C | SKIP_PATCH
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4vxlan-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD forwarding config with 4 phy cores,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 bridge domain with VXLANoIPv4 in 3-node circular topology
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 bridge domain with VXLANoIPv4 in 3-node circular topology
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 bridge domain with VXLANoIPv4 in 3-node circular topology
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 bridge domain with VXLANoIPv4 in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 bridge domain with VXLANoIPv4 in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 bridge domain with VXLANoIPv4 in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 bridge domain with VXLANoIPv4 in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 bridge domain with VXLANoIPv4 in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 bridge domain with VXLANoIPv4 in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 bridge domain with VXLANoIPv4 in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 bridge domain with VXLANoIPv4 in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 bridge domain with VXLANoIPv4 in 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for ethip4vxlan-l2xcbase
-| | ...
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC forwarding config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC forwarding config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ... | ${get_framesize + ${vxlan_overhead}}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize + ${vxlan_overhead}} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4vxlan-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC forwarding config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2xcbase
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4vxlan-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC forwarding config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2xcbase
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4vxlan-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC forwarding config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2xcbase
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4vxlan-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC forwarding config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2xcbase
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4vxlan-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC forwarding config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2xcbase
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4vxlan-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC forwarding config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2xcbase
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4vxlan-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC forwarding config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2xcbase
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4vxlan-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC forwarding config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2xcbase
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4vxlan-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC forwarding config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2xcbase
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4vxlan-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC forwarding config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2xcbase
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4vxlan-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC forwarding config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2xcbase
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4vxlan-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC forwarding config with 4 phy cores,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2xcbase
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 xconnect with VXLANoIPv4 in 3-node circular topology
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 xconnect with VXLANoIPv4 in 3-node circular topology
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 xconnect with VXLANoIPv4 in 3-node circular topology
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 xconnect with VXLANoIPv4 in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 xconnect with VXLANoIPv4 in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 xconnect with VXLANoIPv4 in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 xconnect with VXLANoIPv4 in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 xconnect with VXLANoIPv4 in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 xconnect with VXLANoIPv4 in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 xconnect with VXLANoIPv4 in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 xconnect with VXLANoIPv4 in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 xconnect with VXLANoIPv4 in 3-node circular topology
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results Lisp test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Check RR for ethip4lispip4-ip4base
-| | ...
+| Local template
| | [Documentation]
| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist filters\
-| | ... | config with ${wt} thread(s), ${wt} phy core(s), ${rxq} receive\
-| | ... | queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ... | ${get_framesize + ${lisp_overhead}}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize + ${lisp_overhead}} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4lispip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist\
-| | ... | filters config with 1 phy core, 1 receive queue per NIC\
-| | ... | port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4lispip4-ip4base
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1480B-1t1c-ethip4lispip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist\
-| | ... | filters config with 1 phy core, 1 receive queue per NIC\
-| | ... | port.
-| | ... | [Ver] Measure MaxReceivedRate for 1480B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1480B | 1C
-| | ...
-| | [Template] | Check RR for ethip4lispip4-ip4base
-| | wt=1 | rxq=1 | framesize=${1480}
+| | phy_cores=${1} | framesize=${1480}
| tc03-9000B-1t1c-ethip4lispip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist\
-| | ... | filters config with 1 phy core, 1 receive queue per NIC\
-| | ... | port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip4lispip4-ip4base
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4lispip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist\
-| | ... | filters config with 1 phy core, 1 receive queue per NIC\
-| | ... | port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4lispip4-ip4base
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4lispip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist\
-| | ... | filters config with 2 phy cores, 1 receive queue per NIC\
-| | ... | port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4lispip4-ip4base
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1480B-2t2c-ethip4lispip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist\
-| | ... | filters config with 2 phy cores, 1 receive queue per NIC\
-| | ... | port.
-| | ... | [Ver] Measure MaxReceivedRate for 1480B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1480B | 2C
-| | ...
-| | [Template] | Check RR for ethip4lispip4-ip4base
-| | wt=2 | rxq=1 | framesize=${1480}
+| | phy_cores=${2} | framesize=${1480}
| tc07-9000B-2t2c-ethip4lispip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist\
-| | ... | filters config with 2 phy cores, 1 receive queue per NIC\
-| | ... | port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip4lispip4-ip4base
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4lispip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist\
-| | ... | filters config with 2 phy cores, 1 receive queue per NIC\
-| | ... | port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4lispip4-ip4base
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4lispip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist\
-| | ... | filters config with 4 phy cores, 2 receive queues per NIC\
-| | ... | port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4lispip4-ip4base
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1480B-4t4c-ethip4lispip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist\
-| | ... | filters config with 4 phy cores, 2 receive queues per NIC\
-| | ... | port.
-| | ... | [Ver] Measure MaxReceivedRate for 1480B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1480B | 4C
-| | ...
-| | [Template] | Check RR for ethip4lispip4-ip4base
-| | wt=4 | rxq=2 | framesize=${1480}
+| | phy_cores=${4} | framesize=${1480}
| tc11-9000B-4t4c-ethip4lispip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist\
-| | ... | filters config with 4 phy cores, 2 receive queues per NIC\
-| | ... | port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip4lispip4-ip4base
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4lispip4-ip4base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist\
-| | ... | filters config with 4 phy cores, 2 receive queues per NIC\
-| | ... | port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4lispip4-ip4base
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD with VXLANoIPv4 test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for ethip4vxlan-l2bdbasemaclrn
-| | ...
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD forwarding config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD forwarding config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ... | ${get_framesize + ${vxlan_overhead}}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize + ${vxlan_overhead}} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4vxlan-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD forwarding config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4vxlan-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD forwarding config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4vxlan-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD forwarding config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4vxlan-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD forwarding config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4vxlan-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD forwarding config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4vxlan-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD forwarding config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C | SKIP_PATCH
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4vxlan-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD forwarding config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 2C | SKIP_PATCH
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4vxlan-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD forwarding config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4vxlan-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD forwarding config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4vxlan-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD forwarding config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C | SKIP_PATCH
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4vxlan-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD forwarding config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 4C | SKIP_PATCH
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4vxlan-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD forwarding config with 4 phy cores,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2XC with VXLANoIPv4 test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for ethip4vxlan-l2xcbase
-| | ...
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC forwarding config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC forwarding config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test execution and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ... | ${get_framesize + ${vxlan_overhead}}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize + ${vxlan_overhead}} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4vxlan-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC forwarding config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2xcbase
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-ethip4vxlan-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC forwarding config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2xcbase
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip4vxlan-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC forwarding config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2xcbase
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip4vxlan-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC forwarding config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2xcbase
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-ethip4vxlan-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC forwarding config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2xcbase
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-ethip4vxlan-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC forwarding config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2xcbase
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip4vxlan-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC forwarding config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2xcbase
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip4vxlan-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC forwarding config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2xcbase
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-ethip4vxlan-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC forwarding config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2xcbase
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-ethip4vxlan-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC forwarding config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2xcbase
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip4vxlan-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC forwarding config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2xcbase
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip4vxlan-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC forwarding config with 4 phy cores,\
-| | ... | 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2xcbase
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv6 whitelist test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip6-ip6src253
*** Keywords ***
-| Check RR for ip6base-copwhtlistbase
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with ${wt} \
-| | ... | thread(s), ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with
+| | ... | ${phy_cores} phy core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-78B-1t1c-ethip6-ip6base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-copwhtlistbase
-| | wt=1 | rxq=1 | framesize=${78}
+| | phy_cores=${1} | framesize=${78}
| tc02-1518B-1t1c-ethip6-ip6base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-copwhtlistbase
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip6-ip6base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-copwhtlistbase
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip6-ip6base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ip6base-copwhtlistbase
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-78B-2t2c-ethip6-ip6base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-copwhtlistbase
-| | wt=2 | rxq=1 | framesize=${78}
+| | phy_cores=${2} | framesize=${78}
| tc06-1518B-2t2c-ethip6-ip6base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-copwhtlistbase
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip6-ip6base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-copwhtlistbase
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip6-ip6base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ip6base-copwhtlistbase
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-78B-4t4c-ethip6-ip6base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-copwhtlistbase
-| | wt=4 | rxq=2 | framesize=${78}
+| | phy_cores=${4} | framesize=${78}
| tc10-1518B-4t4c-ethip6-ip6base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-copwhtlistbase
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip6-ip6base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-copwhtlistbase
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip6-ip6base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ip6base-copwhtlistbase
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize IPv6 forwarding in 3-node circular topology
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize IPv6 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize IPv6 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize IPv6 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize IPv6 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize IPv6 forwarding in 3-node circular topology
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv6 iAcl whitelist test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip6-ip6src253
*** Keywords ***
-| Check RR for ip6base-iacldstbase
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with ${wt} \
-| | ... | thread(s), ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with
+| | ... | ${phy_cores} phy core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-78B-1t1c-ethip6-ip6base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-iacldstbase
-| | wt=1 | rxq=1 | framesize=${78}
+| | phy_cores=${1} | framesize=${78}
| tc02-1518B-1t1c-ethip6-ip6base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-iacldstbase
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip6-ip6base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-iacldstbase
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip6-ip6base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ip6base-iacldstbase
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-78B-2t2c-ethip6-ip6base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-iacldstbase
-| | wt=2 | rxq=1 | framesize=${78}
+| | phy_cores=${2} | framesize=${78}
| tc06-1518B-2t2c-ethip6-ip6base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-iacldstbase
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip6-ip6base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-iacldstbase
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip6-ip6base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ip6base-iacldstbase
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-78B-4t4c-ethip6-ip6base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-iacldstbase
-| | wt=4 | rxq=2 | framesize=${78}
+| | phy_cores=${4} | framesize=${78}
| tc10-1518B-4t4c-ethip6-ip6base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-iacldstbase
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip6-ip6base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-iacldstbase
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip6-ip6base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ip6base-iacldstbase
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding in 3-node circular topology
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding in 3-node circular topology
| Test Setup | Set up performance test
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv6 routing test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip6-ip6src253
*** Keywords ***
-| Check RR for ethip6-ip6base
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv6 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-78B-1t1c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 1C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${78} | wt=1 | rxq=1
+| | framesize=${78} | phy_cores=${1}
| tc02-1518B-1t1c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-78B-2t2c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 2C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${78} | wt=2 | rxq=1
+| | framesize=${78} | phy_cores=${2}
| tc06-1518B-2t2c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-78B-4t4c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 4C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${78} | wt=4 | rxq=2
+| | framesize=${78} | phy_cores=${4}
| tc10-1518B-4t4c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding in 3-node circular topology
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding in 3-node circular topology
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv6 routing test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip6-ip6dst${rts_per_flow}
*** Keywords ***
-| Check RR for ip6base-ip6scale
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with ${wt} \
-| | ... | thread(s), ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv6 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-78B-1t1c-ethip6-ip6base-ip6scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=1 | rxq=1 | framesize=${78}
+| | phy_cores=${1} | framesize=${78}
| tc02-1518B-1t1c-ethip6-ip6base-ip6scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip6-ip6base-ip6scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip6-ip6base-ip6scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-78B-2t2c-ethip6-ip6base-ip6scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=2 | rxq=1 | framesize=${78}
+| | phy_cores=${2} | framesize=${78}
| tc06-1518B-2t2c-ethip6-ip6base-ip6scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip6-ip6base-ip6scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip6-ip6base-ip6scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-78B-4t4c-ethip6-ip6base-ip6scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=4 | rxq=2 | framesize=${78}
+| | phy_cores=${4} | framesize=${78}
| tc10-1518B-4t4c-ethip6-ip6base-ip6scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip6-ip6base-ip6scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip6-ip6base-ip6scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding with scaling in 3-node circular topology
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding with scaling in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding with scaling in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding with scaling in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding with scaling in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding with scaling in 3-node circular topology
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv6 routing test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip6-ip6dst${rts_per_flow}
*** Keywords ***
-| Check RR for ip6base-ip6scale
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with ${wt} \
-| | ... | thread(s), ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv6 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-78B-1t1c-ethip6-ip6base-ip6scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=1 | rxq=1 | framesize=${78}
+| | phy_cores=${1} | framesize=${78}
| tc02-1518B-1t1c-ethip6-ip6base-ip6scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip6-ip6base-ip6scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip6-ip6base-ip6scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-78B-2t2c-ethip6-ip6base-ip6scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=2 | rxq=1 | framesize=${78}
+| | phy_cores=${2} | framesize=${78}
| tc06-1518B-2t2c-ethip6-ip6base-ip6scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip6-ip6base-ip6scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip6-ip6base-ip6scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-78B-4t4c-ethip6-ip6base-ip6scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=4 | rxq=2 | framesize=${78}
+| | phy_cores=${4} | framesize=${78}
| tc10-1518B-4t4c-ethip6-ip6base-ip6scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip6-ip6base-ip6scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip6-ip6base-ip6scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding with scaling in 3-node circular topology
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding with scaling in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding with scaling in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding with scaling in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding with scaling in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding with scaling in 3-node circular topology
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv6 routing test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip6-ip6dst${rts_per_flow}
*** Keywords ***
-| Check RR for ip6base-ip6scale
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with ${wt} \
-| | ... | thread(s), ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv6 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-78B-1t1c-ethip6-ip6base-ip6scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=1 | rxq=1 | framesize=${78}
+| | phy_cores=${1} | framesize=${78}
| tc02-1518B-1t1c-ethip6-ip6base-ip6scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip6-ip6base-ip6scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip6-ip6base-ip6scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-78B-2t2c-ethip6-ip6base-ip6scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=2 | rxq=1 | framesize=${78}
+| | phy_cores=${2} | framesize=${78}
| tc06-1518B-2t2c-ethip6-ip6base-ip6scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip6-ip6base-ip6scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip6-ip6base-ip6scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-78B-4t4c-ethip6-ip6base-ip6scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=4 | rxq=2 | framesize=${78}
+| | phy_cores=${4} | framesize=${78}
| tc10-1518B-4t4c-ethip6-ip6base-ip6scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip6-ip6base-ip6scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip6-ip6base-ip6scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
\ No newline at end of file
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding with scaling in 3-node circular topology
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding with scaling in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding with scaling in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding with scaling in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding with scaling in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize IPv6 forwarding with scaling in 3-node circular topology
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv6 whitelist test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip6-ip6src253
*** Keywords ***
-| Check RR for ip6base-copwhtlistbase
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with ${wt} \
-| | ... | thread(s), ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with
+| | ... | ${phy_cores} phy core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-78B-1t1c-ethip6-ip6base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-copwhtlistbase
-| | wt=1 | rxq=1 | framesize=${78}
+| | phy_cores=${1} | framesize=${78}
| tc02-1518B-1t1c-ethip6-ip6base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-copwhtlistbase
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip6-ip6base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-copwhtlistbase
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip6-ip6base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ip6base-copwhtlistbase
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-78B-2t2c-ethip6-ip6base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-copwhtlistbase
-| | wt=2 | rxq=1 | framesize=${78}
+| | phy_cores=${2} | framesize=${78}
| tc06-1518B-2t2c-ethip6-ip6base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-copwhtlistbase
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip6-ip6base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-copwhtlistbase
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip6-ip6base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ip6base-copwhtlistbase
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-78B-4t4c-ethip6-ip6base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-copwhtlistbase
-| | wt=4 | rxq=2 | framesize=${78}
+| | phy_cores=${4} | framesize=${78}
| tc10-1518B-4t4c-ethip6-ip6base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-copwhtlistbase
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip6-ip6base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-copwhtlistbase
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip6-ip6base-copwhtlistbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ip6base-copwhtlistbase
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv6 iAcl whitelist test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip6-ip6src253
*** Keywords ***
-| Check RR for ip6base-iacldstbase
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with ${wt} \
-| | ... | thread(s), ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with
+| | ... | ${phy_cores} phy core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-78B-1t1c-ethip6-ip6base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-iacldstbase
-| | wt=1 | rxq=1 | framesize=${78}
+| | phy_cores=${1} | framesize=${78}
| tc02-1518B-1t1c-ethip6-ip6base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-iacldstbase
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip6-ip6base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-iacldstbase
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip6-ip6base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ip6base-iacldstbase
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-78B-2t2c-ethip6-ip6base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-iacldstbase
-| | wt=2 | rxq=1 | framesize=${78}
+| | phy_cores=${2} | framesize=${78}
| tc06-1518B-2t2c-ethip6-ip6base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-iacldstbase
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip6-ip6base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-iacldstbase
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip6-ip6base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ip6base-iacldstbase
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-78B-4t4c-ethip6-ip6base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-iacldstbase
-| | wt=4 | rxq=2 | framesize=${78}
+| | phy_cores=${4} | framesize=${78}
| tc10-1518B-4t4c-ethip6-ip6base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-iacldstbase
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip6-ip6base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-iacldstbase
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip6-ip6base-iacldstbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ip6base-iacldstbase
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| Test Setup | Set up performance test
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv6 routing test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip6-ip6src253
*** Keywords ***
-| Check RR for ethip6-ip6base
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv6 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-78B-1t1c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 1C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${78} | wt=1 | rxq=1
+| | framesize=${78} | phy_cores=${1}
| tc02-1518B-1t1c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-78B-2t2c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 2C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${78} | wt=2 | rxq=1
+| | framesize=${78} | phy_cores=${2}
| tc06-1518B-2t2c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-78B-4t4c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 4C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${78} | wt=4 | rxq=2
+| | framesize=${78} | phy_cores=${4}
| tc10-1518B-4t4c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv6 routing test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip6-ip6dst${rts_per_flow}
*** Keywords ***
-| Check RR for ip6base-ip6scale
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with ${wt} \
-| | ... | thread(s), ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv6 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-78B-1t1c-ethip6-ip6base-ip6scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=1 | rxq=1 | framesize=${78}
+| | phy_cores=${1} | framesize=${78}
| tc02-1518B-1t1c-ethip6-ip6base-ip6scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip6-ip6base-ip6scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip6-ip6base-ip6scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-78B-2t2c-ethip6-ip6base-ip6scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=2 | rxq=1 | framesize=${78}
+| | phy_cores=${2} | framesize=${78}
| tc06-1518B-2t2c-ethip6-ip6base-ip6scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip6-ip6base-ip6scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip6-ip6base-ip6scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-78B-4t4c-ethip6-ip6base-ip6scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=4 | rxq=2 | framesize=${78}
+| | phy_cores=${4} | framesize=${78}
| tc10-1518B-4t4c-ethip6-ip6base-ip6scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip6-ip6base-ip6scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip6-ip6base-ip6scale200k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv6 routing test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip6-ip6dst${rts_per_flow}
*** Keywords ***
-| Check RR for ip6base-ip6scale
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with ${wt} \
-| | ... | thread(s), ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv6 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-78B-1t1c-ethip6-ip6base-ip6scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=1 | rxq=1 | framesize=${78}
+| | phy_cores=${1} | framesize=${78}
| tc02-1518B-1t1c-ethip6-ip6base-ip6scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip6-ip6base-ip6scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip6-ip6base-ip6scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-78B-2t2c-ethip6-ip6base-ip6scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=2 | rxq=1 | framesize=${78}
+| | phy_cores=${2} | framesize=${78}
| tc06-1518B-2t2c-ethip6-ip6base-ip6scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip6-ip6base-ip6scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip6-ip6base-ip6scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-78B-4t4c-ethip6-ip6base-ip6scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=4 | rxq=2 | framesize=${78}
+| | phy_cores=${4} | framesize=${78}
| tc10-1518B-4t4c-ethip6-ip6base-ip6scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip6-ip6base-ip6scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip6-ip6base-ip6scale20k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv6 routing test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip6-ip6dst${rts_per_flow}
*** Keywords ***
-| Check RR for ip6base-ip6scale
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with ${wt} \
-| | ... | thread(s), ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv6 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-78B-1t1c-ethip6-ip6base-ip6scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=1 | rxq=1 | framesize=${78}
+| | phy_cores=${1} | framesize=${78}
| tc02-1518B-1t1c-ethip6-ip6base-ip6scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip6-ip6base-ip6scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip6-ip6base-ip6scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-78B-2t2c-ethip6-ip6base-ip6scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=2 | rxq=1 | framesize=${78}
+| | phy_cores=${2} | framesize=${78}
| tc06-1518B-2t2c-ethip6-ip6base-ip6scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip6-ip6base-ip6scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip6-ip6base-ip6scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-78B-4t4c-ethip6-ip6base-ip6scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=4 | rxq=2 | framesize=${78}
+| | phy_cores=${4} | framesize=${78}
| tc10-1518B-4t4c-ethip6-ip6base-ip6scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip6-ip6base-ip6scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip6-ip6base-ip6scale2m-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with \
-| | ... | 4 phy cores, 2 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ip6base-ip6scale
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv6 routing test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip6-ip6src253
*** Keywords ***
-| Check RR for ethip6-ip6base
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv6 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_24.5G} | ${get_framesize}
| | ${max_rate}= | Set Variable If
| | ... | ${max_rate} > ${s_18.75Mpps} | ${s_18.75Mpps} | ${max_rate}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-78B-1t1c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 1C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${78} | wt=1 | rxq=1
+| | framesize=${78} | phy_cores=${1}
| tc02-1518B-1t1c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-78B-2t2c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 2C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${78} | wt=2 | rxq=1
+| | framesize=${78} | phy_cores=${2}
| tc06-1518B-2t2c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-78B-4t4c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 4C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${78} | wt=4 | rxq=2
+| | framesize=${78} | phy_cores=${4}
| tc10-1518B-4t4c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-ethip6-ip6base-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip6-ip6base
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize LISP IPv6 over IPv4 forwarding in 3-node circular topology
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize LISP IPv6 over IPv4 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize LISP IPv6 over IPv4 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize LISP IPv6 over IPv4 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize LISP IPv6 over IPv4 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize LISP IPv6 over IPv4 forwarding in 3-node circular topology
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize LISP IPv6 forwarding in 3-node circular topology
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize LISP IPv6 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize LISP IPv6 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize LISP IPv6 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize LISP IPv6 forwarding in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize LISP IPv6 forwarding in 3-node circular topology
*** Keywords ***
| L2 Bridge Domain NDR Binary Search
-| | [Arguments] | ${framesize} | ${min_rate} | ${wt} | ${rxq}
-| | # Test Variables required for test teardown
+| | [Documentation]
+| | ... | [Cfg] DUT runs L2BD switching config with with\
+| | ... | ${phy_cores} phy core.
+| | ... | [Ver] Find NDR for ${framesize}B Byte frames using binary search\
+| | ... | start at 10GE linerate, step 50kpps.
+| | [Arguments] | ${framesize} | ${phy_cores} | ${min_rate}=${50000}
+| | ...
| | 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}
-| | Set Test Documentation | [Cfg] DUT runs L2BD switching config with ${wt}\
-| | Set Test Documentation | thread, ${wt} phy core, ${rxq}\ | append=True
-| | Set Test Documentation | receive queue per NIC port. | append=True
-| | Set Test Documentation | [Ver] Find NDR for ${framesize} Byte\ | append=True
-| | Set Test Documentation | frames using binary search start at\ | append=True
-| | Set Test Documentation | 10GE linerate, step ${threshold}pps. | append=True
-| | Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Add worker threads and rxqueues to all DUTs | ${phy_cores}
| | Add PCI devices to all DUTs
| | Run Keyword If | ${framesize} < ${1522} | Add no multi seg to all DUTs
| | Apply startup configuration on all VPP DUTs
| | ... | ${min_rate} | ${max_rate} | ${threshold}
| L2 Bridge Domain PDR Binary Search
-| | [Arguments] | ${framesize} | ${min_rate} | ${wt} | ${rxq}
-| | # Test Variables required for test teardown
+| | [Documentation]
+| | ... | [Cfg] DUT runs L2BD switching config with with\
+| | ... | ${phy_cores} phy core.
+| | ... | [Ver] Find PDR for ${framesize}B Byte frames using binary search\
+| | ... | start at 10GE linerate, step 50kpps.
+| | [Arguments] | ${framesize} | ${phy_cores} | ${min_rate}=${50000}
+| | ...
| | 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}
-| | Set Test Documentation | [Cfg] DUT runs L2BD switching config with ${wt}\
-| | Set Test Documentation | thread, ${wt} phy core, ${rxq}\ | append=True
-| | Set Test Documentation | receive queue per NIC port. | append=True
-| | Set Test Documentation | [Ver] Find PDR for ${framesize} Byte\ | append=True
-| | Set Test Documentation | frames using binary search start at\ | append=True
-| | Set Test Documentation | 10GE linerate, step ${threshold}pps, | append=True
-| | Set Test Documentation | LT=${perf_pdr_loss_acceptance} | append=True
-| | Set Test Documentation | ${perf_pdr_loss_acceptance_type}. | append=True
-| | Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Add worker threads and rxqueues to all DUTs | ${phy_cores}
| | Add PCI devices to all DUTs
| | Run Keyword If | ${framesize} < ${1522} | Add no multi seg to all DUTs
| | Apply startup configuration on all VPP DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-ndrdisc
-| | ... | framesize=${64} | min_rate=${50000} | wt=1 | rxq=1
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 64B | 1C | NDRDISC
| | [Template] | L2 Bridge Domain NDR Binary Search
+| | framesize=${64} | phy_cores=${1}
| tc02-64B-1t1c-eth-l2bdbasemaclrn-pdrdisc
-| | ... | framesize=${64} | min_rate=${50000} | wt=1 | rxq=1
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
| | [Template] | L2 Bridge Domain PDR Binary Search
+| | framesize=${64} | phy_cores=${1}
| tc03-1518B-1t1c-eth-l2bdbasemaclrn-ndrdisc
-| | ... | framesize=${1518} | min_rate=${50000} | wt=1 | rxq=1
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 1518B | 1C | NDRDISC
| | [Template] | L2 Bridge Domain NDR Binary Search
+| | framesize=${1518} | phy_cores=${1}
| tc04-1518B-1t1c-eth-l2bdbasemaclrn-pdrdisc
-| | ... | framesize=${1518} | min_rate=${50000} | wt=1 | rxq=1
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
| | [Template] | L2 Bridge Domain PDR Binary Search
+| | framesize=${1518} | phy_cores=${1}
| tc05-9000B-1t1c-eth-l2bdbasemaclrn-ndrdisc
-| | ... | framesize=${9000} | min_rate=${10000} | wt=1 | rxq=1
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
| | [Tags] | 9000B | 1C | NDRDISC
| | [Template] | L2 Bridge Domain NDR Binary Search
+| | framesize=${9000} | phy_cores=${1}
| tc06-9000B-1t1c-eth-l2bdbasemaclrn-pdrdisc
-| | ... | framesize=${9000} | min_rate=${10000} | wt=1 | rxq=1
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
| | [Tags] | 9000B | 1C | PDRDISC | SKIP_PATCH
| | [Template] | L2 Bridge Domain PDR Binary Search
+| | framesize=${9000} | phy_cores=${1}
| tc07-64B-2t2c-eth-l2bdbasemaclrn-ndrdisc
-| | ... | framesize=${64} | min_rate=${50000} | wt=2 | rxq=1
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 64B | 2C | NDRDISC
| | [Template] | L2 Bridge Domain NDR Binary Search
+| | framesize=${64} | phy_cores=${2}
| tc08-64B-2t2c-eth-l2bdbasemaclrn-pdrdisc
-| | ... | framesize=${64} | min_rate=${50000} | wt=2 | rxq=1
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
| | [Template] | L2 Bridge Domain PDR Binary Search
+| | framesize=${64} | phy_cores=${2}
| tc09-1518B-2t2c-eth-l2bdbasemaclrn-ndrdisc
-| | ... | framesize=${1518} | min_rate=${50000} | wt=2 | rxq=1
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
| | [Template] | L2 Bridge Domain NDR Binary Search
+| | framesize=${1518} | phy_cores=${2}
| tc10-1518B-2t2c-eth-l2bdbasemaclrn-pdrdisc
-| | ... | framesize=${1518} | min_rate=${50000} | wt=2 | rxq=1
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
| | [Template] | L2 Bridge Domain PDR Binary Search
+| | framesize=${1518} | phy_cores=${2}
| tc11-9000B-2t2c-eth-l2bdbasemaclrn-ndrdisc
-| | ... | framesize=${9000} | min_rate=${10000} | wt=2 | rxq=1
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
| | [Tags] | 9000B | 2C | NDRDISC | SKIP_PATCH
| | [Template] | L2 Bridge Domain NDR Binary Search
+| | framesize=${9000} | phy_cores=${2}
| tc12-9000B-2t2c-eth-l2bdbasemaclrn-pdrdisc
-| | ... | framesize=${9000} | min_rate=${10000} | wt=2 | rxq=1
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
| | [Tags] | 9000B | 2C | PDRDISC | SKIP_PATCH
| | [Template] | L2 Bridge Domain PDR Binary Search
+| | framesize=${9000} | phy_cores=${2}
| tc13-64B-4t4c-eth-l2bdbasemaclrn-ndrdisc
-| | ... | framesize=${64} | min_rate=${50000} | wt=4 | rxq=2
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 64B | 4C | NDRDISC
| | [Template] | L2 Bridge Domain NDR Binary Search
+| | framesize=${64} | phy_cores=${4}
| tc14-64B-4t4c-eth-l2bdbasemaclrn-pdrdisc
-| | ... | framesize=${64} | min_rate=${50000} | wt=4 | rxq=2
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
| | [Template] | L2 Bridge Domain PDR Binary Search
+| | framesize=${64} | phy_cores=${4}
| tc15-1518B-4t4c-eth-l2bdbasemaclrn-ndrdisc
-| | ... | framesize=${1518} | min_rate=${50000} | wt=4 | rxq=2
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
| | [Template] | L2 Bridge Domain NDR Binary Search
+| | framesize=${1518} | phy_cores=${4}
| tc16-1518B-4t4c-eth-l2bdbasemaclrn-pdrdisc
-| | ... | framesize=${1518} | min_rate=${50000} | wt=4 | rxq=2
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
| | [Template] | L2 Bridge Domain PDR Binary Search
+| | framesize=${1518} | phy_cores=${4}
| tc17-9000B-4t4c-eth-l2bdbasemaclrn-ndrdisc
-| | ... | framesize=${9000} | min_rate=${10000} | wt=4 | rxq=2
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
| | [Tags] | 9000B | 4C | NDRDISC | SKIP_PATCH
| | [Template] | L2 Bridge Domain NDR Binary Search
+| | framesize=${9000} | phy_cores=${4}
| tc18-9000B-4t4c-eth-l2bdbasemaclrn-pdrdisc
-| | ... | framesize=${9000} | min_rate=${10000} | wt=4 | rxq=2
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
| | [Tags] | 9000B | 4C | PDRDISC | SKIP_PATCH
| | [Template] | L2 Bridge Domain PDR Binary Search
+| | framesize=${9000} | phy_cores=${4}
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Set interfaces in path in 3-node circular topology up
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Set interfaces in path in 3-node circular topology up
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Set interfaces in path in 3-node circular topology up
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Set interfaces in path in 3-node circular topology up
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Set interfaces in path in 3-node circular topology up
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Set interfaces in path in 3-node circular topology up
| Test Setup | Set up performance test
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases with 802.1q test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile} | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for L2 dot1q-l2bdbasemaclrn
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with VLAN with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD config with VLAN.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ... | ${get_framesize} + ${vlan_overhead}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-dot1q-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for L2 dot1q-l2bdbasemaclrn
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-dot1q-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for L2 dot1q-l2bdbasemaclrn
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-dot1q-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for L2 dot1q-l2bdbasemaclrn
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-dot1q-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for L2 dot1q-l2bdbasemaclrn
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-dot1q-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for L2 dot1q-l2bdbasemaclrn
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-dot1q-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for L2 dot1q-l2bdbasemaclrn
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-dot1q-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for L2 dot1q-l2bdbasemaclrn
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-dot1q-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for L2 dot1q-l2bdbasemaclrn
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-dot1q-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for L2 dot1q-l2bdbasemaclrn
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-dot1q-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for L2 dot1q-l2bdbasemaclrn
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-dot1q-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for L2 dot1q-l2bdbasemaclrn
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-dot1q-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for L2 dot1q-l2bdbasemaclrn
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| Test Teardown | Tear down performance discovery test | ${min_rate}pps
| ... | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with 802.1q test
| ... | cases*
| ...
| ${traffic_profile} | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with VLAN
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-dot1q-l2bdbasemaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VLAN
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-dot1q-l2bdbasemaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VLAN
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-dot1q-l2bdbasemaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VLAN
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-dot1q-l2bdbasemaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VLAN
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-dot1q-l2bdbasemaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VLAN
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-dot1q-l2bdbasemaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 50kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VLAN
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-dot1q-l2bdbasemaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VLAN
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-dot1q-l2bdbasemaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VLAN
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-dot1q-l2bdbasemaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VLAN
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-dot1q-l2bdbasemaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VLAN
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-IMIX-2t2c-dot1q-l2bdbasemaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VLAN
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc12-IMIX-2t2c-dot1q-l2bdbasemaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VLAN
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc13-64B-4t4c-dot1q-l2bdbasemaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VLAN
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-dot1q-l2bdbasemaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VLAN
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-dot1q-l2bdbasemaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VLAN
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-dot1q-l2bdbasemaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VLAN
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-IMIX-4t4c-dot1q-l2bdbasemaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 50kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VLAN
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc18-IMIX-4t4c-dot1q-l2bdbasemaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 50kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VLAN
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2XC with 802.1q test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile} | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for L2XC dot1q-l2xcbase
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with VLAN dot1q with ${wt} thread(s), \
-| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC config with VLAN dot1q with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-dot1q-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for L2XC dot1q-l2xcbase
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-dot1q-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for L2XC dot1q-l2xcbase
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-dot1q-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for L2XC dot1q-l2xcbase
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-dot1q-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for L2XC dot1q-l2xcbase
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-dot1q-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for L2XC dot1q-l2xcbase
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-dot1q-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for L2XC dot1q-l2xcbase
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-dot1q-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for L2XC dot1q-l2xcbase
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-dot1q-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for L2XC dot1q-l2xcbase
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-dot1q-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for L2XC dot1q-l2xcbase
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-dot1q-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for L2XC dot1q-l2xcbase
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-dot1q-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for L2XC dot1q-l2xcbase
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-dot1q-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for L2XC dot1q-l2xcbase
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Set interfaces in path in 3-node circular topology up
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Set interfaces in path in 3-node circular topology up
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Set interfaces in path in 3-node circular topology up
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Set interfaces in path in 3-node circular topology up
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Set interfaces in path in 3-node circular topology up
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Set interfaces in path in 3-node circular topology up
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl10-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-iacl10-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-iacl10-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-iacl10-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-iacl10-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-iacl10-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl10-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-iacl10-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-iacl10-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-iacl10-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-iacl10-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-iacl10-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl10-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-iacl10-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-iacl10-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-iacl10-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-iacl10-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-iacl10-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl10-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-iacl10-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-iacl10-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-iacl10-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-iacl10-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-iacl10-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl10-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-iacl10-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-iacl10-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-iacl10-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-iacl10-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-iacl10-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl10-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-iacl10-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-iacl10-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-iacl10-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-iacl10-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-iacl10-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl1-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-iacl1-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-iacl1-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-iacl1-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-iacl1-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-iacl1-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl1-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-iacl1-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-iacl1-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-iacl1-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-iacl1-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-iacl1-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile} | trex-sl-3n-ethip4udp-10u1000p-conc
*** Keywords ***
-| Check RR for L2BD l2bdbasemaclrn-iacl1sf
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with ACLs with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD config with ACLs with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sf
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sf
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sf
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sf
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sf
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sf
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sf
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sf
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sf
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-2t2c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sf
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-2t2c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sf
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-2t2c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sf
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl1-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-iacl1-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-iacl1-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-iacl1-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-iacl1-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-iacl1-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl1-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-iacl1-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-iacl1-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-iacl1-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-iacl1-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-iacl1-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile} | trex-sl-3n-ethip4udp-10u1000p-conc
*** Keywords ***
-| Check RR for L2BD l2bdbasemaclrn-iacl1sl
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with ACLs with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD config with ACLs with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sl
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sl
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sl
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sl
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sl
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sl
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sl
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sl
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sl
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sl
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sl
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sl
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl50-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-iacl50-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-iacl50-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-iacl50-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-iacl50-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-iacl50-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl50-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-iacl50-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-iacl50-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-iacl50-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-iacl50-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-iacl50-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile} | trex-sl-3n-ethip4udp-10u1000p-conc
*** Keywords ***
-| Check RR for L2BD l2bdbasemaclrn-iacl50sf
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with ACLs with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD config with ACLs with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sf
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sf
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sf
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sf
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sf
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sf
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sf
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sf
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sf
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sf
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sf
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sf
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl50-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-iacl50-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-iacl50-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-iacl50-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-iacl50-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-iacl50-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl50-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-iacl50-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-iacl50-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-iacl50-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-iacl50-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-iacl50-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile} | trex-sl-3n-ethip4udp-10u1000p-conc
*** Keywords ***
-| Check RR for L2BD l2bdbasemaclrn-iacl50sl
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with ACLs with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD config with ACLs with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sl
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sl
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sl
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sl
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sl
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sl
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sl
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sl
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sl
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sl
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sl
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sl
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with MACIP ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile}= | trex-sl-3n-ethip4-macsrc100ip4src100
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-macip-iacl10sl-100flows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-macip-iacl10sl-100flows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-macip-iacl10sl-100flows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-macip-iacl10sl-100flows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-macip-iacl10sl-100flows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-macip-iacl10sl-100flows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with MACIP ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile}= | trex-sl-3n-ethip4-macsrc100kip4src100k
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-macip-iacl10sl-100kflows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-macip-iacl10sl-100kflows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-macip-iacl10sl-100kflows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-macip-iacl10sl-100kflows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-macip-iacl10sl-100kflows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-macip-iacl10sl-100kflows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with MACIP ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile}= | trex-sl-3n-ethip4-macsrc10kip4src10k
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-macip-iacl10sl-10kflows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-macip-iacl10sl-10kflows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-macip-iacl10sl-10kflows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-macip-iacl10sl-10kflows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-macip-iacl10sl-10kflows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-macip-iacl10sl-10kflows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with MACIP ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile}= | trex-sl-3n-ethip4-macsrc100ip4src100
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-macip-iacl1sl-100flows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-macip-iacl1sl-100flows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-macip-iacl1sl-100flows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-macip-iacl1sl-100flows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-macip-iacl1sl-100flows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-macip-iacl1sl-100flows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with MACIP ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile}= | trex-sl-3n-ethip4-macsrc100kip4src100k
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-macip-iacl1sl-100kflows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-macip-iacl1sl-100kflows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-macip-iacl1sl-100kflows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-macip-iacl1sl-100kflows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-macip-iacl1sl-100kflows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-macip-iacl1sl-100kflows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with MACIP ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile}= | trex-sl-3n-ethip4-macsrc10kip4src10k
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-macip-iacl1sl-10kflows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-macip-iacl1sl-10kflows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-macip-iacl1sl-10kflows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-macip-iacl1sl-10kflows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-macip-iacl1sl-10kflows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-macip-iacl1sl-10kflows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with MACIP ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile}= | trex-sl-3n-ethip4-macsrc100ip4src100
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-macip-iacl50sl-100flows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-macip-iacl50sl-100flows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-macip-iacl50sl-100flows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-macip-iacl50sl-100flows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-macip-iacl50sl-100flows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-macip-iacl50sl-100flows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with MACIP ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile}= | trex-sl-3n-ethip4-macsrc100kip4src100k
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-macip-iacl50sl-100kflows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-macip-iacl50sl-100kflows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-macip-iacl50sl-100kflows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-macip-iacl50sl-100kflows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-macip-iacl50sl-100kflows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-macip-iacl50sl-100kflows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with MACIP ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile}= | trex-sl-3n-ethip4-macsrc10kip4src10k
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-macip-iacl50sl-10kflows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-macip-iacl50sl-10kflows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-macip-iacl50sl-10kflows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-macip-iacl50sl-10kflows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-macip-iacl50sl-10kflows-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-macip-iacl50sl-10kflows-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with MACIP ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with MACIP ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Setup | Set up performance test
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for l2bdbasemaclrn
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD config with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| Test Teardown | Tear down performance discovery test | ${min_rate}pps
| ... | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Pkt throughput L2BD test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile} | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| L2 Bridge Domain Binary Search
-| | [Arguments] | ${framesize} | ${min_rate} | ${wt} | ${rxq} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Set Variable If
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 64B | 1C | NDRDISC
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${1} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${1} | search_type=PDR
| tc03-1518B-1t1c-eth-l2bdbasemaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 1518B | 1C | NDRDISC
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${1} | search_type=NDR
| tc04-1518B-1t1c-eth-l2bdbasemaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${1} | search_type=PDR
| tc05-9000B-1t1c-eth-l2bdbasemaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
| | [Tags] | 9000B | 1C | NDRDISC
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${9000} | min_rate=${10000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${9000} | phy_cores=${1} | search_type=NDR
| tc06-9000B-1t1c-eth-l2bdbasemaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
| | [Tags] | 9000B | 1C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${9000} | min_rate=${10000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${9000} | phy_cores=${1} | search_type=PDR
| tc07-64B-2t2c-eth-l2bdbasemaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 64B | 2C | NDRDISC
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${2} | search_type=NDR
| tc08-64B-2t2c-eth-l2bdbasemaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${2} | search_type=PDR
| tc09-1518B-2t2c-eth-l2bdbasemaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${2} | search_type=NDR
| tc10-1518B-2t2c-eth-l2bdbasemaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${2} | search_type=PDR
| tc11-9000B-2t2c-eth-l2bdbasemaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
| | [Tags] | 9000B | 2C | NDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${9000} | min_rate=${10000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${9000} | phy_cores=${2} | search_type=NDR
| tc12-9000B-2t2c-eth-l2bdbasemaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
| | [Tags] | 9000B | 2C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${9000} | min_rate=${10000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${9000} | phy_cores=${2} | search_type=PDR
| tc13-64B-4t4c-eth-l2bdbasemaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 64B | 4C | NDRDISC
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=4 | rxq=2 | search_type=NDR
+| | framesize=${64} | phy_cores=${4} | search_type=NDR
| tc14-64B-4t4c-eth-l2bdbasemaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=4 | rxq=2 | search_type=PDR
+| | framesize=${64} | phy_cores=${4} | search_type=PDR
| tc15-1518B-4t4c-eth-l2bdbasemaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=4 | rxq=2 | search_type=NDR
+| | framesize=${1518} | phy_cores=${4} | search_type=NDR
| tc16-1518B-4t4c-eth-l2bdbasemaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=4 | rxq=2 | search_type=PDR
+| | framesize=${1518} | phy_cores=${4} | search_type=PDR
| tc17-9000B-4t4c-eth-l2bdbasemaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
| | [Tags] | 9000B | 4C | NDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${9000} | min_rate=${10000} | wt=4 | rxq=2 | search_type=NDR
+| | framesize=${9000} | phy_cores=${4} | search_type=NDR
| tc18-9000B-4t4c-eth-l2bdbasemaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
| | [Tags] | 9000B | 4C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${9000} | min_rate=${10000} | wt=4 | rxq=2 | search_type=PDR
+| | framesize=${9000} | phy_cores=${4} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-oacl10-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-oacl10-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-oacl10-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-oacl10-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-oacl10-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-oacl10-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-oacl10-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-oacl10-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-oacl10-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-oacl10-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-oacl10-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-oacl10-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-oacl10-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-oacl10-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-oacl10-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-oacl10-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-oacl10-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-oacl10-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-oacl10-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-oacl10-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-oacl10-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-oacl10-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-oacl10-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-oacl10-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-oacl10-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-oacl10-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-oacl10-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-oacl10-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-oacl10-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-oacl10-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-oacl10-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-oacl10-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-oacl10-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-oacl10-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-oacl10-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-oacl10-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-oacl1-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-oacl1-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-oacl1-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-oacl1-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-oacl1-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-oacl1-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-oacl1-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-oacl1-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-oacl1-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-oacl1-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-oacl1-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-oacl1-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-oacl1-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-oacl1-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-oacl1-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-oacl1-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-oacl1-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-oacl1-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-oacl1-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-oacl1-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-oacl1-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-oacl1-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-oacl1-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-oacl1-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-oacl1-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-oacl1-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-oacl1-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-oacl1-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-oacl1-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-oacl1-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-oacl1-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-oacl1-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-oacl1-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-oacl1-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-oacl1-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-oacl1-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-oacl50-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-oacl50-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-oacl50-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-oacl50-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-oacl50-stateful-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-oacl50-stateful-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-oacl50-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-oacl50-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-oacl50-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-oacl50-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-oacl50-stateful-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-oacl50-stateful-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-oacl50-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-oacl50-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-oacl50-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-oacl50-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-oacl50-stateful-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-oacl50-stateful-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-oacl50-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-oacl50-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-oacl50-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-oacl50-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-oacl50-stateless-flows100-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-oacl50-stateless-flows100-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-oacl50-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-oacl50-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-oacl50-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-oacl50-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-oacl50-stateless-flows100k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-oacl50-stateless-flows100k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| Test Teardown | Tear down performance test with ACL
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${trex_stream2_subnet}= | 20.20.20.0/24
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_core} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | 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 '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-oacl50-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-oacl50-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-64B-2t2c-eth-l2bdbasemaclrn-oacl50-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc04-64B-2t2c-eth-l2bdbasemaclrn-oacl50-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc05-64B-4t4c-eth-l2bdbasemaclrn-oacl50-stateless-flows10k-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc06-64B-4t4c-eth-l2bdbasemaclrn-oacl50-stateless-flows10k-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with ACLs
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results for L2BD test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile} | trex-sl-3n-ethip4-macsrc50kdst50k
*** Keywords ***
-| Check RR for L2BD eth-l2bdscale
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| Local template
+| | [Documentation]
+| | ... | [CFG] DUT runs L2BD switching config with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
+| | ... | trial throughput test.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdscale100kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2bdscale100kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2bdscale100kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2bdscale100kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2bdscale100kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2bdscale100kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2bdscale100kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2bdscale100kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2bdscale100kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2bdscale100kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2bdscale100kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2bdscale100kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| Test Teardown | Tear down performance discovery test | ${min_rate}pps
| ... | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Pkt throughput L2BD test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile} | trex-sl-3n-ethip4-macsrc50kdst50k
*** Keywords ***
-| L2 Bridge Domain Binary Search
-| | [Arguments] | ${framesize} | ${min_rate} | ${wt} | ${rxq} | ${search_type}
+| Local template
+| | [Arguments] | ${framesize} | ${phy_cores} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Set Variable If
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | Add PCI devices to all DUTs
| | Run Keyword If | ${get_framesize} < ${1522} | Add No Multi Seg to all DUTs
| | Apply startup configuration on all VPP DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdscale100kmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 64B | 1C | NDRDISC
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${1} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdscale100kmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${1} | search_type=PDR
| tc03-1518B-1t1c-eth-l2bdscale100kmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 1518B | 1C | NDRDISC
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${1} | search_type=NDR
| tc04-1518B-1t1c-eth-l2bdscale100kmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${1} | search_type=PDR
| tc05-9000B-1t1c-eth-l2bdscale100kmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
| | [Tags] | 9000B | 1C | NDRDISC
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${9000} | min_rate=${10000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${9000} | phy_cores=${1} | search_type=NDR
| tc06-9000B-1t1c-eth-l2bdscale100kmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
| | [Tags] | 9000B | 1C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${9000} | min_rate=${10000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${9000} | phy_cores=${1} | search_type=PDR
| tc07-64B-2t2c-eth-l2bdscale100kmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 64B | 2C | NDRDISC
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${2} | search_type=NDR
| tc08-64B-2t2c-eth-l2bdscale100kmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${2} | search_type=PDR
| tc09-1518B-2t2c-eth-l2bdscale100kmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${2} | search_type=NDR
| tc10-1518B-2t2c-eth-l2bdscale100kmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${2} | search_type=PDR
| tc11-9000B-2t2c-eth-l2bdscale100kmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
| | [Tags] | 9000B | 2C | NDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${9000} | min_rate=${10000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${9000} | phy_cores=${2} | search_type=NDR
| tc12-9000B-2t2c-eth-l2bdscale100kmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
| | [Tags] | 9000B | 2C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${9000} | min_rate=${10000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${9000} | phy_cores=${2} | search_type=PDR
| tc13-64B-4t4c-eth-l2bdscale100kmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 64B | 4C | NDRDISC
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=4 | rxq=2 | search_type=NDR
+| | framesize=${64} | phy_cores=${4} | search_type=NDR
| tc14-64B-4t4c-eth-l2bdscale100kmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=4 | rxq=2 | search_type=PDR
+| | framesize=${64} | phy_cores=${4} | search_type=PDR
| tc15-1518B-4t4c-eth-l2bdscale100kmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=4 | rxq=2 | search_type=NDR
+| | framesize=${1518} | phy_cores=${4} | search_type=NDR
| tc16-1518B-4t4c-eth-l2bdscale100kmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=4 | rxq=2 | search_type=PDR
+| | framesize=${1518} | phy_cores=${4} | search_type=PDR
| tc17-9000B-4t4c-eth-l2bdscale100kmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
| | [Tags] | 9000B | 4C | NDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${9000} | min_rate=${10000} | wt=4 | rxq=2 | search_type=NDR
+| | framesize=${9000} | phy_cores=${4} | search_type=NDR
| tc18-9000B-4t4c-eth-l2bdscale100kmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
| | [Tags] | 9000B | 4C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${9000} | min_rate=${10000} | wt=4 | rxq=2 | search_type=PDR
+| | framesize=${9000} | phy_cores=${4} | search_type=PDR
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results for L2BD test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile} | trex-sl-3n-ethip4-macsrc5kdst5k
*** Keywords ***
-| Check RR for L2BD eth-l2bdscale
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| Local template
+| | [Documentation]
+| | ... | [CFG] DUT runs L2BD switching config with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
+| | ... | trial throughput test.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2dbscale10kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2dbscale10kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2dbscale10kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2dbscale10kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX_v4_1 | 1C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2dbscale10kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2dbscale10kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2dbscale10kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2dbscale10kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX_v4_1 | 2C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2dbscale10kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2dbscale10kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2dbscale10kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2dbscale10kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | 9000B | IMIX_v4_1
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| Test Teardown | Tear down performance discovery test | ${min_rate}pps
| ... | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Pkt throughput L2BD test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile} | trex-sl-3n-ethip4-macsrc5kdst5k
*** Keywords ***
-| L2 Bridge Domain Binary Search
-| | [Arguments] | ${framesize} | ${min_rate} | ${wt} | ${rxq} | ${search_type}
+| Local template
+| | [Arguments] | ${framezise} | ${phy_cores} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Set Variable If
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | Add PCI devices to all DUTs
| | Run Keyword If | ${get_framesize} < ${1522} | Add No Multi Seg to all DUTs
| | Apply startup configuration on all VPP DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2dbscale10kmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 64B | 1C | NDRDISC
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${1} | search_type=NDR
| tc02-64B-1t1c-eth-l2dbscale10kmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${1} | search_type=PDR
| tc03-1518B-1t1c-eth-l2dbscale10kmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 1518B | 1C | NDRDISC
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${1} | search_type=NDR
| tc04-1518B-1t1c-eth-l2dbscale10kmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${1} | search_type=PDR
| tc05-9000B-1t1c-eth-l2dbscale10kmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
| | [Tags] | 9000B | 1C | NDRDISC
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${9000} | min_rate=${10000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${9000} | phy_cores=${1} | search_type=NDR
| tc06-9000B-1t1c-eth-l2dbscale10kmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
| | [Tags] | 9000B | 1C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${9000} | min_rate=${10000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${9000} | phy_cores=${1} | search_type=PDR
| tc07-64B-2t2c-eth-l2dbscale10kmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 64B | 2C | NDRDISC
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${2} | search_type=NDR
| tc08-64B-2t2c-eth-l2dbscale10kmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${2} | search_type=PDR
| tc09-1518B-2t2c-eth-l2dbscale10kmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${2} | search_type=NDR
| tc10-1518B-2t2c-eth-l2dbscale10kmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${2} | search_type=PDR
| tc11-9000B-2t2c-eth-l2dbscale10kmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
| | [Tags] | 9000B | 2C | NDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${9000} | min_rate=${10000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${9000} | phy_cores=${2} | search_type=NDR
| tc12-9000B-2t2c-eth-l2dbscale10kmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
| | [Tags] | 9000B | 2C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${9000} | min_rate=${10000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${9000} | phy_cores=${2} | search_type=PDR
| tc13-64B-4t4c-eth-l2dbscale10kmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 64B | 4C | NDRDISC
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=4 | rxq=2 | search_type=NDR
+| | framesize=${64} | phy_cores=${4} | search_type=NDR
| tc14-64B-4t4c-eth-l2dbscale10kmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=4 | rxq=2 | search_type=PDR
+| | framesize=${64} | phy_cores=${4} | search_type=PDR
| tc15-1518B-4t4c-eth-l2dbscale10kmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=4 | rxq=2 | search_type=NDR
+| | framesize=${1518} | phy_cores=${4} | search_type=NDR
| tc16-1518B-4t4c-eth-l2dbscale10kmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=4 | rxq=2 | search_type=PDR
+| | framesize=${1518} | phy_cores=${4} | search_type=PDR
| tc17-9000B-4t4c-eth-l2dbscale10kmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
| | [Tags] | 9000B | 4C | NDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${9000} | min_rate=${10000} | wt=4 | rxq=2 | search_type=NDR
+| | framesize=${9000} | phy_cores=${4} | search_type=NDR
| tc18-9000B-4t4c-eth-l2dbscale10kmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
| | [Tags] | 9000B | 4C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${9000} | min_rate=${10000} | wt=4 | rxq=2 | search_type=PDR
+| | framesize=${9000} | phy_cores=${4} | search_type=PDR
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results for L2BD test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile} | trex-sl-3n-ethip4-macsrc500kdst500k
*** Keywords ***
-| Check RR for L2BD eth-l2bdscale
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD config with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdscale1mmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2bdscale1mmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2bdscale1mmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2bdscale1mmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2bdscale1mmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2bdscale1mmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2bdscale1mmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-9000B-2t2c-eth-l2bdscale1mmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2bdscale1mmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2bdscale1mmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2bdscale1mmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2bdscale1mmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| Test Teardown | Tear down performance discovery test | ${min_rate}pps
| ... | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Pkt throughput L2BD test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile} | trex-sl-3n-ethip4-macsrc500kdst500k
*** Keywords ***
-| L2 Bridge Domain Binary Search
-| | [Arguments] | ${framesize} | ${min_rate} | ${wt} | ${rxq} | ${search_type}
+| Local template
+| | [Arguments] | ${framesize} | ${phy_cores} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
+| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Set Variable If
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | Add PCI devices to all DUTs
| | Run Keyword If | ${get_framesize} < ${1522} | Add No Multi Seg to all DUTs
| | Apply startup configuration on all VPP DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdscale1mmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 64B | 1C | NDRDISC
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${1} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdscale1mmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${1} | search_type=PDR
| tc03-1518B-1t1c-eth-l2bdscale1mmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 1518B | 1C | NDRDISC
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${1} | search_type=NDR
| tc04-1518B-1t1c-eth-l2bdscale1mmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${1} | search_type=PDR
| tc05-9000B-1t1c-eth-l2bdscale1mmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
| | [Tags] | 9000B | 1C | NDRDISC
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${9000} | min_rate=${10000} | wt=1 | rxq=1 | search_type=NDR
+| | framesize=${9000} | phy_cores=${1} | search_type=NDR
| tc06-9000B-1t1c-eth-l2bdscale1mmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
| | [Tags] | 9000B | 1C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${9000} | min_rate=${10000} | wt=1 | rxq=1 | search_type=PDR
+| | framesize=${9000} | phy_cores=${1} | search_type=PDR
| tc07-64B-2t2c-eth-l2bdscale1mmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 64B | 2C | NDRDISC
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${64} | phy_cores=${2} | search_type=NDR
| tc08-64B-2t2c-eth-l2bdscale1mmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${64} | phy_cores=${2} | search_type=PDR
| tc09-1518B-2t2c-eth-l2bdscale1mmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${1518} | phy_cores=${2} | search_type=NDR
| tc10-1518B-2t2c-eth-l2bdscale1mmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${1518} | phy_cores=${2} | search_type=PDR
| tc11-9000B-2t2c-eth-l2bdscale1mmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
| | [Tags] | 9000B | 2C | NDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${9000} | min_rate=${10000} | wt=2 | rxq=1 | search_type=NDR
+| | framesize=${9000} | phy_cores=${2} | search_type=NDR
| tc12-9000B-2t2c-eth-l2bdscale1mmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
| | [Tags] | 9000B | 2C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${9000} | min_rate=${10000} | wt=2 | rxq=1 | search_type=PDR
+| | framesize=${9000} | phy_cores=${2} | search_type=PDR
| tc13-64B-4t4c-eth-l2bdscale1mmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 64B | 4C | NDRDISC
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=4 | rxq=2 | search_type=NDR
+| | framesize=${64} | phy_cores=${4} | search_type=NDR
| tc14-64B-4t4c-eth-l2bdscale1mmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=4 | rxq=2 | search_type=PDR
+| | framesize=${64} | phy_cores=${4} | search_type=PDR
| tc15-1518B-4t4c-eth-l2bdscale1mmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=4 | rxq=2 | search_type=NDR
+| | framesize=${1518} | phy_cores=${4} | search_type=NDR
| tc16-1518B-4t4c-eth-l2bdscale1mmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${1518} | min_rate=${50000} | wt=4 | rxq=2 | search_type=PDR
+| | framesize=${1518} | phy_cores=${4} | search_type=PDR
| tc17-9000B-4t4c-eth-l2bdscale1mmaclrn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
| | [Tags] | 9000B | 4C | NDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${9000} | min_rate=${10000} | wt=4 | rxq=2 | search_type=NDR
+| | framesize=${9000} | phy_cores=${4} | search_type=NDR
| tc18-9000B-4t4c-eth-l2bdscale1mmaclrn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
| | [Tags] | 9000B | 4C | PDRDISC | SKIP_PATCH
-| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${9000} | min_rate=${10000} | wt=4 | rxq=2 | search_type=PDR
+| | framesize=${9000} | phy_cores=${4} | search_type=PDR
| Test Setup | Set up performance test
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2XC test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for l2xcbase
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC config with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 xconnect in 3-node circular topology
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 xconnect in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 xconnect in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 xconnect in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 xconnect in 3-node circular topology
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | And Initialize L2 xconnect 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}
\ No newline at end of file
+| | ... | ${perf_pdr_loss_acceptance} | ${perf_pdr_loss_acceptance_type}
| Test Setup | Set up performance test
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases with 802.1q test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for L2 dot1q-l2bdbasemaclrn
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with VLAN with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD config with VLAN with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ... | ${get_framesize} + ${vlan_overhead}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-dot1q-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for L2 dot1q-l2bdbasemaclrn
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-dot1q-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for L2 dot1q-l2bdbasemaclrn
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-dot1q-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for L2 dot1q-l2bdbasemaclrn
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-dot1q-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for L2 dot1q-l2bdbasemaclrn
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-dot1q-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for L2 dot1q-l2bdbasemaclrn
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-dot1q-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for L2 dot1q-l2bdbasemaclrn
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-dot1q-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for L2 dot1q-l2bdbasemaclrn
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-dot1q-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for L2 dot1q-l2bdbasemaclrn
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-dot1q-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for L2 dot1q-l2bdbasemaclrn
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-dot1q-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for L2 dot1q-l2bdbasemaclrn
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-dot1q-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for L2 dot1q-l2bdbasemaclrn
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-dot1q-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for L2 dot1q-l2bdbasemaclrn
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| ... | L2 | Intel-X710
| Suite Teardown | Tear down 3-node performance topology
| ...
-| ...
| Test Setup | Set up performance test
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2XC with 802.1q test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for L2XC dot1q-l2xcbase
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with VLAN dot1q with ${wt} thread(s), \
-| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC config with VLAN dot1q with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-dot1q-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for L2XC dot1q-l2xcbase
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-dot1q-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for L2XC dot1q-l2xcbase
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-dot1q-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for L2XC dot1q-l2xcbase
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-dot1q-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for L2XC dot1q-l2xcbase
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-dot1q-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for L2XC dot1q-l2xcbase
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-dot1q-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for L2XC dot1q-l2xcbase
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-dot1q-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for L2XC dot1q-l2xcbase
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-dot1q-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for L2XC dot1q-l2xcbase
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-dot1q-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for L2XC dot1q-l2xcbase
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-dot1q-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for L2XC dot1q-l2xcbase
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-dot1q-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for L2XC dot1q-l2xcbase
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-dot1q-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for L2XC dot1q-l2xcbase
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile}= | trex-sl-3n-ethip4udp-10u1000p-conc
*** Keywords ***
-| Check RR for L2BD l2bdbasemaclrn-iacl1sf
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with ACLs with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD config with ACLs with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sf
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sf
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sf
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sf
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sf
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sf
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sf
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sf
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sf
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-2t2c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sf
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-2t2c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sf
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-2t2c-eth-l2bdbasemaclrn-iacl1-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sf
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile}= | trex-sl-3n-ethip4udp-10u1000p-conc
*** Keywords ***
-| Check RR for L2BD l2bdbasemaclrn-iacl1sl
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with ACLs with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD config with ACLs with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sl
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sl
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sl
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sl
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sl
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sl
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sl
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sl
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sl
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sl
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sl
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl1sl
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile}= | trex-sl-3n-ethip4udp-10u1000p-conc
*** Keywords ***
-| Check RR for L2BD l2bdbasemaclrn-iacl50sf
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with ACLs with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD config with ACLs with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sf
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sf
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sf
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sf
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sf
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sf
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sf
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sf
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sf
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sf
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sf
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-eth-l2bdbasemaclrn-iacl50-stateful-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sf
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases with ACL*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile}= | trex-sl-3n-ethip4udp-10u1000p-conc
*** Keywords ***
-| Check RR for L2BD l2bdbasemaclrn-iacl50sl
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with ACLs with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD config with ACLs with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sl
-| | wt=1 | rxq=1 | framesize=${64}
+| | phy_cores=${1} | framesize=${64}
| tc02-1518B-1t1c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sl
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sl
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sl
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-64B-2t2c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sl
-| | wt=2 | rxq=1 | framesize=${64}
+| | phy_cores=${2} | framesize=${64}
| tc06-1518B-2t2c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sl
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sl
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sl
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-64B-4t4c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sl
-| | wt=4 | rxq=2 | framesize=${64}
+| | phy_cores=${4} | framesize=${64}
| tc10-1518B-4t4c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sl
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sl
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ACL with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for L2BD l2bdbasemaclrn-iacl50sl
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| Test Setup | Set up performance test
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for l2bdbasemaclrn
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD config with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
*** Keywords ***
| L2 Bridge Domain NDR Binary Search
-| | [Arguments] | ${framesize} | ${min_rate} | ${wt} | ${rxq}
+| | [Arguments] | ${framesize} | ${phy_cores} | ${min_rate}=${50000}
| | 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}
-| | Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${None}
| | Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
| | ... | ${min_rate} | ${max_rate} | ${threshold}
| L2 Bridge Domain PDR Binary Search
-| | [Arguments] | ${framesize} | ${min_rate} | ${wt} | ${rxq}
+| | [Arguments] | ${framesize} | ${phy_cores} | ${min_rate}=${50000}
| | 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}
-| | Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${None}
| | Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-ndrdisc
-| | ... | framesize=${64} | min_rate=${50000} | wt=1 | rxq=1
+| | ... | framesize=${64} | phy_cores=${1}
| | [Tags] | 64B | 1C | NDRDISC
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Template] | L2 Bridge Domain NDR Binary Search
| tc02-64B-1t1c-eth-l2bdbasemaclrn-pdrdisc
-| | ... | framesize=${64} | min_rate=${50000} | wt=1 | rxq=1
+| | ... | framesize=${64} | phy_cores=${1}
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Template] | L2 Bridge Domain PDR Binary Search
| tc03-1518B-1t1c-eth-l2bdbasemaclrn-ndrdisc
-| | ... | framesize=${1518} | min_rate=${50000} | wt=1 | rxq=1
+| | ... | framesize=${1518} | phy_cores=${1}
| | [Tags] | 1518B | 1C | NDRDISC
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Template] | L2 Bridge Domain NDR Binary Search
| tc04-1518B-1t1c-eth-l2bdbasemaclrn-pdrdisc
-| | ... | framesize=${1518} | min_rate=${50000} | wt=1 | rxq=1
+| | ... | framesize=${1518} | phy_cores=${1}
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Template] | L2 Bridge Domain PDR Binary Search
| tc05-9000B-1t1c-eth-l2bdbasemaclrn-ndrdisc
-| | ... | framesize=${9000} | min_rate=${10000} | wt=1 | rxq=1
+| | ... | framesize=${9000} | phy_cores=${1}
| | [Tags] | 9000B | 1C | NDRDISC
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
| | [Template] | L2 Bridge Domain NDR Binary Search
| tc06-9000B-1t1c-eth-l2bdbasemaclrn-pdrdisc
-| | ... | framesize=${9000} | min_rate=${10000} | wt=1 | rxq=1
+| | ... | framesize=${9000} | phy_cores=${1}
| | [Tags] | 9000B | 1C | PDRDISC | SKIP_PATCH
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
| | [Template] | L2 Bridge Domain PDR Binary Search
| tc07-64B-2t2c-eth-l2bdbasemaclrn-ndrdisc
-| | ... | framesize=${64} | min_rate=${50000} | wt=2 | rxq=1
+| | ... | framesize=${64} | phy_cores=${2}
| | [Tags] | 64B | 2C | NDRDISC
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Template] | L2 Bridge Domain NDR Binary Search
| tc08-64B-2t2c-eth-l2bdbasemaclrn-pdrdisc
-| | ... | framesize=${64} | min_rate=${50000} | wt=2 | rxq=1
+| | ... | framesize=${64} | phy_cores=${2}
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Template] | L2 Bridge Domain PDR Binary Search
| tc09-1518B-2t2c-eth-l2bdbasemaclrn-ndrdisc
-| | ... | framesize=${1518} | min_rate=${50000} | wt=2 | rxq=1
+| | ... | framesize=${1518} | phy_cores=${2}
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Template] | L2 Bridge Domain NDR Binary Search
| tc10-1518B-2t2c-eth-l2bdbasemaclrn-pdrdisc
-| | ... | framesize=${1518} | min_rate=${50000} | wt=2 | rxq=1
+| | ... | framesize=${1518} | phy_cores=${2}
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Template] | L2 Bridge Domain PDR Binary Search
| tc11-9000B-2t2c-eth-l2bdbasemaclrn-ndrdisc
-| | ... | framesize=${9000} | min_rate=${10000} | wt=2 | rxq=1
+| | ... | framesize=${9000} | phy_cores=${2}
| | [Tags] | 9000B | 2C | NDRDISC | SKIP_PATCH
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
| | [Template] | L2 Bridge Domain NDR Binary Search
| tc12-9000B-2t2c-eth-l2bdbasemaclrn-pdrdisc
-| | ... | framesize=${9000} | min_rate=${10000} | wt=2 | rxq=1
+| | ... | framesize=${9000} | phy_cores=${2}
| | [Tags] | 9000B | 2C | PDRDISC | SKIP_PATCH
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
| | [Template] | L2 Bridge Domain PDR Binary Search
| tc13-64B-4t4c-eth-l2bdbasemaclrn-ndrdisc
-| | ... | framesize=${64} | min_rate=${50000} | wt=4 | rxq=2
+| | ... | framesize=${64} | phy_cores=${4}
| | [Tags] | 64B | 4C | NDRDISC
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Template] | L2 Bridge Domain NDR Binary Search
| tc14-64B-4t4c-eth-l2bdbasemaclrn-pdrdisc
-| | ... | framesize=${64} | min_rate=${50000} | wt=4 | rxq=2
+| | ... | framesize=${64} | phy_cores=${4}
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Template] | L2 Bridge Domain PDR Binary Search
| tc15-1518B-4t4c-eth-l2bdbasemaclrn-ndrdisc
-| | ... | framesize=${1518} | min_rate=${50000} | wt=4 | rxq=2
+| | ... | framesize=${1518} | phy_cores=${4}
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
| | [Template] | L2 Bridge Domain NDR Binary Search
| tc16-1518B-4t4c-eth-l2bdbasemaclrn-pdrdisc
-| | ... | framesize=${1518} | min_rate=${50000} | wt=4 | rxq=2
+| | ... | framesize=${1518} | phy_cores=${4}
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
| | [Template] | L2 Bridge Domain PDR Binary Search
| tc17-9000B-4t4c-eth-l2bdbasemaclrn-ndrdisc
-| | ... | framesize=${9000} | min_rate=${10000} | wt=4 | rxq=2
+| | ... | framesize=${9000} | phy_cores=${4}
| | [Tags] | 9000B | 4C | NDRDISC | SKIP_PATCH
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
| | [Template] | L2 Bridge Domain NDR Binary Search
| tc18-9000B-4t4c-eth-l2bdbasemaclrn-pdrdisc
-| | ... | framesize=${9000} | min_rate=${10000} | wt=4 | rxq=2
+| | ... | framesize=${9000} | phy_cores=${4}
| | [Tags] | 9000B | 4C | PDRDISC | SKIP_PATCH
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
| | [Template] | L2 Bridge Domain PDR Binary Search
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results for L2BD test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile}= | trex-sl-3n-ethip4-macsrc50kdst50k
*** Keywords ***
-| Check RR for L2BD eth-l2bdscale
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| Local template
+| | [Documentation]
+| | ... | [Cfg] DUT runs L2BD switching config with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
+| | ... | trial throughput test.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdscale100kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2bdscale100kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2bdscale100kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2bdscale100kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2bdscale100kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2bdscale100kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2bdscale100kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2bdscale100kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2bdscale100kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2bdscale100kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2bdscale100kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2bdscale100kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results for L2BD test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile}= | trex-sl-3n-ethip4-macsrc5kdst5k
*** Keywords ***
-| Check RR for L2BD eth-l2bdscale
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| Local template
+| | [Documentation]
+| | ... | [CFG] DUT runs L2BD switching config with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
+| | ... | trial throughput test.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2dbscale10kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2dbscale10kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2dbscale10kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2dbscale10kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX_v4_1 | 1C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2dbscale10kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2dbscale10kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2dbscale10kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2dbscale10kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX_v4_1 | 2C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2dbscale10kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2dbscale10kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2dbscale10kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2dbscale10kmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | 9000B | IMIX_v4_1
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results for L2BD test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile}= | trex-sl-3n-ethip4-macsrc500kdst500k
*** Keywords ***
-| Check RR for L2BD eth-l2bdscale
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD config with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdscale1mmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2bdscale1mmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2bdscale1mmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2bdscale1mmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2bdscale1mmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2bdscale1mmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2bdscale1mmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-9000B-2t2c-eth-l2bdscale1mmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2bdscale1mmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2bdscale1mmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2bdscale1mmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2bdscale1mmaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for L2BD eth-l2bdscale
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| Test Setup | Set up performance test
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2XC test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for l2xcbase
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with ${wt} thread(s), ${wt}\
-| | ... | phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC config with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile} | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for l2bdbasemaclrn
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD config with ${wt} thread(s),\
-| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD config with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_24.5G} | ${get_framesize}
| | ${max_rate}= | Set Variable If
| | ... | ${max_rate} > ${s_18.75Mpps} | ${s_18.75Mpps} | ${max_rate}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2bdbasemaclrn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for l2bdbasemaclrn
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| Test Teardown | Tear down performance discovery test | ${min_rate}pps
| ... | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Pkt throughput L2BD test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
*** Keywords ***
| L2 Bridge Domain Binary Search BW limit
-| | [Arguments] | ${framesize} | ${min_rate} | ${wt} | ${rxq} | ${s_limit}
-| | ... | ${search_type}
+| | [Arguments] | ${framesize} | ${phy_cores} | ${s_limit}
+| | ... | ${search_type} | ${min_rate}=${50000}
| | 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}
-| | Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${None}
| | Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
| | ... | ${perf_pdr_loss_acceptance} | ${perf_pdr_loss_acceptance_type}
| L2 Bridge Domain Binary Search
-| | [Arguments] | ${framesize} | ${min_rate} | ${wt} | ${rxq} | ${s_limit}
-| | ... | ${search_type}
+| | [Arguments] | ${framesize} | ${phy_cores} | ${s_limit}
+| | ... | ${search_type} | ${min_rate}=${50000}
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${max_rate}= | Set Variable | ${s_limit}
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${None}
| | Add PCI devices to all DUTs
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
| | ... | 18.75Mpps rate, step 50kpps.
| | [Tags] | 64B | 1C | NDRDISC
| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| | ... | s_limit=${s_18.75Mpps} | search_type=NDR
| tc03-1518B-1t1c-eth-l2bdbasemaclrn-ndrdisc
| | ... | 24.5G rate, step 50kpps.
| | [Tags] | 1518B | 1C | NDRDISC
| | [Template] | L2 Bridge Domain Binary Search BW limit
-| | framesize=${1518} | min_rate=${50000} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| | ... | s_limit=${s_24.5G} | search_type=NDR
| tc07-64B-2t2c-eth-l2bdbasemaclrn-ndrdisc
| | ... | 18.75Mpps rate, step 50kpps.
| | [Tags] | 64B | 2C | NDRDISC
| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| | ... | s_limit=${s_18.75Mpps} | search_type=NDR
| tc09-1518B-2t2c-eth-l2bdbasemaclrn-ndrdisc
| | ... | 24.5G rate, step 50kpps.
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
| | [Template] | L2 Bridge Domain Binary Search BW limit
-| | framesize=${1518} | min_rate=${50000} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| | ... | s_limit=${s_24.5G} | search_type=NDR
| tc13-64B-4t4c-eth-l2bdbasemaclrn-ndrdisc
| | ... | 18.75Mpps rate, step 50kpps.
| | [Tags] | 64B | 4C | NDRDISC
| | [Template] | L2 Bridge Domain Binary Search
-| | framesize=${64} | min_rate=${50000} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| | ... | s_limit=${s_18.75Mpps} | search_type=NDR
| tc15-1518B-4t4c-eth-l2bdbasemaclrn-ndrdisc
| | ... | 24.5G rate, step 50kpps.
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
| | [Template] | L2 Bridge Domain Binary Search BW limit
-| | framesize=${1518} | min_rate=${50000} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| | ... | s_limit=${s_24.5G} | search_type=NDR
| tc19-IMIX-1t1c-eth-l2bdbasemaclrn-ndrdisc
| | ... | 24.5G rate, step 50kpps.
| | [Tags] | IMIX | 1C | NDRDISC
| | [Template] | L2 Bridge Domain Binary Search BW limit
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| | ... | s_limit=${s_24.5G} | search_type=NDR
| tc20-IMIX-2t2c-eth-l2bdbasemaclrn-ndrdisc
| | ... | 24.5G rate, step 50kpps.
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
| | [Template] | L2 Bridge Domain Binary Search BW limit
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| | ... | s_limit=${s_24.5G} | search_type=NDR
| tc21-IMIX-4t4c-eth-l2bdbasemaclrn-ndrdisc
| | ... | 24.5G rate, step 50kpps.
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
| | [Template] | L2 Bridge Domain Binary Search BW limit
-| | framesize=IMIX_v4_1 | min_rate=${50000} | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| | ... | s_limit=${s_24.5G} | search_type=NDR
| ...
| Test Teardown | Tear down performance mrr test
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2XC test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for l2xcbase
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC config with ${wt} thread(s),\
-| | ... | ${wt} phy core(s), ${rxq} receive queue(s) per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC config with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_24.5G} | ${get_framesize}
| | ${max_rate}= | Set Variable If
| | ... | ${max_rate} > ${s_18.75Mpps} | ${s_18.75Mpps} | ${max_rate}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy core, \
-| | ... | 1 receive queue per NIC port..
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2xcbase-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 thread, 4 phy core, \
-| | ... | 2 receive queue per NIC port..
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for l2xcbase
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${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
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add DPDK dev default RXD to all DUTs | 2048
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Add DPDK dev default RXD to all DUTs | 2048
| ...
| Test Teardown | Tear down mrr test with SRv6 with encapsulation
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results for Segment routing over IPv6 dataplane with\
| ... | one SID (SRH not inserted) test cases*
| ...
| ${traffic_profile}= | trex-sl-3n-ethip6-ip6src253
*** Keywords ***
-| Check RR for IPv6 routing over SRv6
+| Local template
+| | [Documentation]
+| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
+| | ... | trial throughput test.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ... | ${get_framesize} + ${srv6_overhead_nosrh}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
*** Test Cases ***
| tc01-78B-1t1c-ethip6ip6-ip6base-srv6enc1sid-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 1C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=1 | rxq=1 | framesize=${78}
+| | phy_cores=${1} | framesize=${78}
| tc02-1518B-1t1c-ethip6ip6-ip6base-srv6enc1sid-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip6ip6-ip6base-srv6enc1sid-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip6ip6-ip6base-srv6enc1sid-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-78B-2t2c-ethip6ip6-ip6base-srv6enc1sid-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 2C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=2 | rxq=1 | framesize=${78}
+| | phy_cores=${2} | framesize=${78}
| tc06-1518B-2t2c-ethip6ip6-ip6base-srv6enc1sid-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip6ip6-ip6base-srv6enc1sid-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip6ip6-ip6base-srv6enc1sid-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-78B-4t4c-ethip6ip6-ip6base-srv6enc1sid-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 4C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=4 | rxq=2 | framesize=${78}
+| | phy_cores=${4} | framesize=${78}
| tc10-1518B-4t4c-ethip6ip6-ip6base-srv6enc1sid-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip6ip6-ip6base-srv6enc1sid-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip6ip6-ip6base-srv6enc1sid-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| Test Teardown | Tear down performance test with SRv6 with encapsulation
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Packet throughput Segment routing over IPv6 dataplane with\
| ... | one SID (SRH not inserted) test cases*
| ...
| ${traffic_profile}= | trex-sl-3n-ethip6-ip6src253
*** Keywords ***
-| Discover NDR or PDR for IPv6 routing over SRv6
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
*** Test Cases ***
| tc01-78B-1t1c-ethip6ip6-ip6base-srv6enc1sid-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 78B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=1 | rxq=1 | framesize=${78} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${78} | search_type=NDR
| tc02-78B-1t1c-ethip6ip6-ip6base-srv6enc1sid-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 78B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=1 | rxq=1 | framesize=${78} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${78} | search_type=PDR
| tc03-78B-2t2c-ethip6ip6-ip6base-srv6enc1sid-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 78B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=2 | rxq=1 | framesize=${78} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${78} | search_type=NDR
| tc04-78B-2t2c-ethip6ip6-ip6base-srv6enc1sid-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 78B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=2 | rxq=1 | framesize=${78} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${78} | search_type=PDR
| tc05-78B-4t4c-ethip6ip6-ip6base-srv6enc1sid-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 78B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=4 | rxq=2 | framesize=${78} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${78} | search_type=NDR
| tc06-78B-4t4c-ethip6ip6-ip6base-srv6enc1sid-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 78B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=4 | rxq=2 | framesize=${78} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${78} | search_type=PDR
| tc07-1518B-1t1c-ethip6ip6-ip6base-srv6enc1sid-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc08-1518B-1t1c-ethip6ip6-ip6base-srv6enc1sid-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc09-1518B-2t2c-ethip6ip6-ip6base-srv6enc1sid-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-ethip6ip6-ip6base-srv6enc1sid-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-1518B-4t4c-ethip6ip6-ip6base-srv6enc1sid-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc12-1518B-4t4c-ethip6ip6-ip6base-srv6enc1sid-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| ...
| Test Teardown | Tear down mrr test with SRv6 with encapsulation
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results for Segment routing over IPv6 dataplane with\
| ... | two SIDs (SRH inserted) test cases*
| ...
| ${traffic_profile}= | trex-sl-3n-ethip6-ip6src253
*** Keywords ***
-| Check RR for IPv6 routing over SRv6
+| Local template
+| | [Documentation]
+| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
+| | ... | trial throughput test.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ... | ${get_framesize} + ${srv6_overhead_2sids}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
*** Test Cases ***
| tc01-78B-1t1c-ethip6srhip6-ip6base-srv6enc2sids-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 1C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=1 | rxq=1 | framesize=${78}
+| | phy_cores=${1} | framesize=${78}
| tc02-1518B-1t1c-ethip6srhip6-ip6base-srv6enc2sids-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip6srhip6-ip6base-srv6enc2sids-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip6srhip6-ip6base-srv6enc2sids-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-78B-2t2c-ethip6srhip6-ip6base-srv6enc2sids-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 2C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=2 | rxq=1 | framesize=${78}
+| | phy_cores=${2} | framesize=${78}
| tc06-1518B-2t2c-ethip6srhip6-ip6base-srv6enc2sids-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip6srhip6-ip6base-srv6enc2sids-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip6srhip6-ip6base-srv6enc2sids-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-78B-4t4c-ethip6srhip6-ip6base-srv6enc2sids-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 4C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=4 | rxq=2 | framesize=${78}
+| | phy_cores=${4} | framesize=${78}
| tc10-1518B-4t4c-ethip6srhip6-ip6base-srv6enc2sids-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip6srhip6-ip6base-srv6enc2sids-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip6srhip6-ip6base-srv6enc2sids-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| Test Teardown | Tear down performance test with SRv6 with encapsulation
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Packet throughput Segment routing over IPv6 dataplane with\
| ... | two SIDs (SRH inserted) test cases*
| ...
| ${traffic_profile}= | trex-sl-3n-ethip6-ip6src253
*** Keywords ***
-| Discover NDR or PDR for IPv6 routing over SRv6
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
*** Test Cases ***
| tc01-78B-1t1c-ethip6srhip6-ip6base-srv6enc2sids-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 78B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=1 | rxq=1 | framesize=${78} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${78} | search_type=NDR
| tc02-78B-1t1c-ethip6srhip6-ip6base-srv6enc2sids-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 78B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=1 | rxq=1 | framesize=${78} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${78} | search_type=PDR
| tc03-78B-2t2c-ethip6srhip6-ip6base-srv6enc2sids-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 78B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=2 | rxq=1 | framesize=${78} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${78} | search_type=NDR
| tc04-78B-2t2c-ethip6srhip6-ip6base-srv6enc2sids-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 78B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=2 | rxq=1 | framesize=${78} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${78} | search_type=PDR
| tc05-78B-4t4c-ethip6srhip6-ip6base-srv6enc2sids-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 78B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=4 | rxq=2 | framesize=${78} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${78} | search_type=NDR
| tc06-78B-4t4c-ethip6srhip6-ip6base-srv6enc2sids-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 78B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=4 | rxq=2 | framesize=${78} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${78} | search_type=PDR
| tc07-1518B-1t1c-ethip6srhip6-ip6base-srv6enc2sids-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc08-1518B-1t1c-ethip6srhip6-ip6base-srv6enc2sids-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc09-1518B-2t2c-ethip6srhip6-ip6base-srv6enc2sids-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-ethip6srhip6-ip6base-srv6enc2sids-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-1518B-4t4c-ethip6srhip6-ip6base-srv6enc2sids-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc12-1518B-4t4c-ethip6srhip6-ip6base-srv6enc2sids-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| ...
| Test Teardown | Tear down mrr test with SRv6 with encapsulation
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results for Segment routing over IPv6 dataplane with\
| ... | two SIDs (SRH inserted) without decapsulation test cases*
| ...
| ${traffic_profile}= | trex-sl-3n-ethip6-ip6src253
*** Keywords ***
-| Check RR for IPv6 routing over SRv6
+| Local template
+| | [Documentation]
+| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
+| | ... | trial throughput test.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ... | ${get_framesize} + ${srv6_overhead_2sids}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
*** Test Cases ***
| tc01-78B-1t1c-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 1C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=1 | rxq=1 | framesize=${78}
+| | phy_cores=${1} | framesize=${78}
| tc02-1518B-1t1c-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-78B-2t2c-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 2C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=2 | rxq=1 | framesize=${78}
+| | phy_cores=${2} | framesize=${78}
| tc06-1518B-2t2c-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-78B-4t4c-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 4C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=4 | rxq=2 | framesize=${78}
+| | phy_cores=${4} | framesize=${78}
| tc10-1518B-4t4c-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| Test Teardown | Tear down performance test with SRv6 with encapsulation
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Packet throughput Segment routing over IPv6 dataplane with\
| ... | two SIDs (SRH inserted) without decapsulation test cases*
| ...
| ${traffic_profile}= | trex-sl-3n-ethip6-ip6src253
*** Keywords ***
-| Discover NDR or PDR for IPv6 routing over SRv6
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
*** Test Cases ***
| tc01-78B-1t1c-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 78B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=1 | rxq=1 | framesize=${78} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${78} | search_type=NDR
| tc02-78B-1t1c-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 78B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=1 | rxq=1 | framesize=${78} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${78} | search_type=PDR
| tc03-78B-2t2c-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 78B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=2 | rxq=1 | framesize=${78} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${78} | search_type=NDR
| tc04-78B-2t2c-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 78B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=2 | rxq=1 | framesize=${78} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${78} | search_type=PDR
| tc05-78B-4t4c-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 78B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=4 | rxq=2 | framesize=${78} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${78} | search_type=NDR
| tc06-78B-4t4c-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 78B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=4 | rxq=2 | framesize=${78} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${78} | search_type=PDR
| tc07-1518B-1t1c-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc08-1518B-1t1c-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc09-1518B-2t2c-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-1518B-4t4c-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc12-1518B-4t4c-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| ...
| Test Teardown | Tear down mrr test with SRv6 with encapsulation
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results for Segment routing over IPv6 dataplane with\
| ... | Dynamic SRv6 proxy test cases*
| ...
| ${container_cpus}= | ${5}
*** Keywords ***
-| Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via dynamic proxy behaviour
+| Local template
+| | [Documentation]
+| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
+| | ... | trial throughput test.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
-| | Set Test Variable | ${rxq}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ... | ${get_framesize} + ${srv6_overhead_3sids}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} + ${srv6_overhead_3sids} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-78B-1t1c-ethip6srhip6-ip6base-srv6proxy-dyn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with dynamic SRv6 proxy config\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 1C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via dynamic proxy behaviour
-| | wt=1 | rxq=1 | framesize=${78}
+| | phy_cores=${1} | framesize=${78}
| tc02-1518B-1t1c-ethip6srhip6-ip6base-srv6proxy-dyn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with dynamic SRv6 proxy config\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via dynamic proxy behaviour
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip6srhip6-ip6base-srv6proxy-dyn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with dynamic SRv6 proxy config\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via dynamic proxy behaviour
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip6srhip6-ip6base-srv6proxy-dyn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with dynamic SRv6 proxy config\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via dynamic proxy behaviour
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-78B-2t2c-ethip6srhip6-ip6base-srv6proxy-dyn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with dynamic SRv6 proxy config\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 2C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via dynamic proxy behaviour
-| | wt=2 | rxq=1 | framesize=${78}
+| | phy_cores=${2} | framesize=${78}
| tc06-1518B-2t2c-ethip6srhip6-ip6base-srv6proxy-dyn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with dynamic SRv6 proxy config\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via dynamic proxy behaviour
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip6srhip6-ip6base-srv6proxy-dyn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with dynamic SRv6 proxy config\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via dynamic proxy behaviour
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip6srhip6-ip6base-srv6proxy-dyn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with dynamic SRv6 proxy config\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via dynamic proxy behaviour
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-78B-4t4c-ethip6srhip6-ip6base-srv6proxy-dyn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with dynamic SRv6 proxy config\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 4C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via dynamic proxy behaviour
-| | wt=4 | rxq=2 | framesize=${78}
+| | phy_cores=${4} | framesize=${78}
| tc10-1518B-4t4c-ethip6srhip6-ip6base-srv6proxy-dyn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with dynamic SRv6 proxy config\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via dynamic proxy behaviour
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip6srhip6-ip6base-srv6proxy-dyn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with dynamic SRv6 proxy config\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via dynamic proxy behaviour
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip6srhip6-ip6base-srv6proxy-dyn-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with dynamic SRv6 proxy config\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via dynamic proxy behaviour
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| Test Teardown | Tear down performance test with SRv6 with encapsulation
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Packet throughput Segment routing over IPv6 dataplane with\
| ... | Dynamic SRv6 proxy test cases*
| ...
| ${container_cpus}= | ${5}
*** Keywords ***
-| Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via dynamic proxy behaviour
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
-| | Set Test Variable | ${rxq}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ... | ${get_framesize} + ${srv6_overhead_3sids}
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} + ${srv6_overhead_3sids} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-78B-1t1c-ethip6srhip6-ip6base-srv6proxy-dyn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with dynamic SRv6 proxy config\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 78B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via dynamic proxy behaviour
-| | wt=1 | rxq=1 | framesize=${78} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${78} | search_type=NDR
| tc02-78B-1t1c-ethip6srhip6-ip6base-srv6proxy-dyn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with dynamic SRv6 proxy config\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 78B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via dynamic proxy behaviour
-| | wt=1 | rxq=1 | framesize=${78} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${78} | search_type=PDR
| tc03-78B-2t2c-ethip6srhip6-ip6base-srv6proxy-dyn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with dynamic SRv6 proxy config\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 78B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via dynamic proxy behaviour
-| | wt=2 | rxq=1 | framesize=${78} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${78} | search_type=NDR
| tc04-78B-2t2c-ethip6srhip6-ip6base-srv6proxy-dyn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with dynamic SRv6 proxy config\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 78B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via dynamic proxy behaviour
-| | wt=2 | rxq=1 | framesize=${78} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${78} | search_type=PDR
| tc05-78B-4t4c-ethip6srhip6-ip6base-srv6proxy-dyn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with dynamic SRv6 proxy config\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 78B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via dynamic proxy behaviour
-| | wt=4 | rxq=2 | framesize=${78} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${78} | search_type=NDR
| tc06-78B-4t4c-ethip6srhip6-ip6base-srv6proxy-dyn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with dynamic SRv6 proxy config\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 78B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via dynamic proxy behaviour
-| | wt=4 | rxq=2 | framesize=${78} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${78} | search_type=PDR
| tc07-1518B-1t1c-ethip6srhip6-ip6base-srv6proxy-dyn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with dynamic SRv6 proxy config\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via dynamic proxy behaviour
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc08-1518B-1t1c-ethip6srhip6-ip6base-srv6proxy-dyn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with dynamic SRv6 proxy config\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via dynamic proxy behaviour
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc09-1518B-2t2c-ethip6srhip6-ip6base-srv6proxy-dyn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with dynamic SRv6 proxy config\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via dynamic proxy behaviour
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-ethip6srhip6-ip6base-srv6proxy-dyn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with dynamic SRv6 proxy config\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via dynamic proxy behaviour
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-1518B-4t4c-ethip6srhip6-ip6base-srv6proxy-dyn-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with dynamic SRv6 proxy config\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via dynamic proxy behaviour
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc12-1518B-4t4c-ethip6srhip6-ip6base-srv6proxy-dyn-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with dynamic SRv6 proxy config\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via dynamic proxy behaviour
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| ...
| Test Teardown | Tear down mrr test with SRv6 with encapsulation
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results for Segment routing over IPv6 dataplane with\
| ... | Masquerading SRv6 proxy test cases*
| ...
| ${container_cpus}= | ${5}
*** Keywords ***
-| Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via masquerading proxy behaviour
+| Local template
+| | [Documentation]
+| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
+| | ... | trial throughput test.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
-| | Set Test Variable | ${rxq}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ... | ${get_framesize} + ${srv6_overhead_3sids}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} + ${srv6_overhead_3sids} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-78B-1t1c-ethip6srhip6-ip6base-srv6proxy-masq-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with masquerading SRv6 proxy\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 1C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via masquerading proxy behaviour
-| | wt=1 | rxq=1 | framesize=${78}
+| | phy_cores=${1} | framesize=${78}
| tc02-1518B-1t1c-ethip6srhip6-ip6base-srv6proxy-masq-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with masquerading SRv6 proxy\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via masquerading proxy behaviour
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip6srhip6-ip6base-srv6proxy-masq-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with masquerading SRv6 proxy\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via masquerading proxy behaviour
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip6srhip6-ip6base-srv6proxy-masq-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with masquerading SRv6 proxy\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via masquerading proxy behaviour
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-78B-2t2c-ethip6srhip6-ip6base-srv6proxy-masq-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with masquerading SRv6 proxy\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 2C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via masquerading proxy behaviour
-| | wt=2 | rxq=1 | framesize=${78}
+| | phy_cores=${2} | framesize=${78}
| tc06-1518B-2t2c-ethip6srhip6-ip6base-srv6proxy-masq-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with masquerading SRv6 proxy\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via masquerading proxy behaviour
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip6srhip6-ip6base-srv6proxy-masq-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with masquerading SRv6 proxy\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via masquerading proxy behaviour
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip6srhip6-ip6base-srv6proxy-masq-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with masquerading SRv6 proxy\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via masquerading proxy behaviour
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-78B-4t4c-ethip6srhip6-ip6base-srv6proxy-masq-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with masquerading SRv6 proxy\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 4C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via masquerading proxy behaviour
-| | wt=4 | rxq=2 | framesize=${78}
+| | phy_cores=${4} | framesize=${78}
| tc10-1518B-4t4c-ethip6srhip6-ip6base-srv6proxy-masq-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with masquerading SRv6 proxy\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via masquerading proxy behaviour
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip6srhip6-ip6base-srv6proxy-masq-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with masquerading SRv6 proxy\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via masquerading proxy behaviour
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip6srhip6-ip6base-srv6proxy-masq-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with masquerading SRv6 proxy\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via masquerading proxy behaviour
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| Test Teardown | Tear down performance test with SRv6 with encapsulation
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Packet throughput Segment routing over IPv6 dataplane with\
| ... | Masquerading SRv6 proxy test cases*
| ...
| ${container_cpus}= | ${5}
*** Keywords ***
-| Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via masquerading proxy behaviour
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
-| | Set Test Variable | ${rxq}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ... | ${get_framesize} + ${srv6_overhead_3sids}
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} + ${srv6_overhead_3sids} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-78B-1t1c-ethip6srhip6-ip6base-srv6proxy-masq-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with masquerading SRv6 proxy\
-| | ... | config with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 78B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via masquerading proxy behaviour
-| | wt=1 | rxq=1 | framesize=${78} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${78} | search_type=NDR
| tc02-78B-1t1c-ethip6srhip6-ip6base-srv6proxy-masq-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with masquerading SRv6 proxy\
-| | ... | config with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 78B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via masquerading proxy behaviour
-| | wt=1 | rxq=1 | framesize=${78} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${78} | search_type=PDR
| tc03-78B-2t2c-ethip6srhip6-ip6base-srv6proxy-masq-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with masquerading SRv6 proxy\
-| | ... | config with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 78B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via masquerading proxy behaviour
-| | wt=2 | rxq=1 | framesize=${78} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${78} | search_type=NDR
| tc04-78B-2t2c-ethip6srhip6-ip6base-srv6proxy-masq-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with masquerading SRv6 proxy\
-| | ... | config with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 78B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via masquerading proxy behaviour
-| | wt=2 | rxq=1 | framesize=${78} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${78} | search_type=PDR
| tc05-78B-4t4c-ethip6srhip6-ip6base-srv6proxy-masq-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with masquerading SRv6 proxy\
-| | ... | config with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 78B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via masquerading proxy behaviour
-| | wt=4 | rxq=2 | framesize=${78} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${78} | search_type=NDR
| tc06-78B-4t4c-ethip6srhip6-ip6base-srv6proxy-masq-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with masquerading SRv6 proxy\
-| | ... | config with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 78B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via masquerading proxy behaviour
-| | wt=4 | rxq=2 | framesize=${78} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${78} | search_type=PDR
| tc07-1518B-1t1c-ethip6srhip6-ip6base-srv6proxy-masq-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with masquerading SRv6 proxy\
-| | ... | config with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via masquerading proxy behaviour
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc08-1518B-1t1c-ethip6srhip6-ip6base-srv6proxy-masq-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with masquerading SRv6 proxy\
-| | ... | config with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via masquerading proxy behaviour
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc09-1518B-2t2c-ethip6srhip6-ip6base-srv6proxy-masq-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with masquerading SRv6 proxy\
-| | ... | config with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via masquerading proxy behaviour
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-ethip6srhip6-ip6base-srv6proxy-masq-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with masquerading SRv6 proxy\
-| | ... | config with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via masquerading proxy behaviour
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-1518B-4t4c-ethip6srhip6-ip6base-srv6proxy-masq-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with masquerading SRv6 proxy\
-| | ... | config with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via masquerading proxy behaviour
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc12-1518B-4t4c-ethip6srhip6-ip6base-srv6proxy-masq-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with masquerading SRv6 proxy\
-| | ... | config with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via masquerading proxy behaviour
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| ...
| Test Teardown | Tear down mrr test with SRv6 with encapsulation
| ...
+| Test Template | Local template
+| ...
| Documentation | *Packet throughput Segment routing over IPv6 dataplane with\
| ... | Static SRv6 proxy test cases*
| ...
| ${container_cpus}= | ${5}
*** Keywords ***
-| Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via static proxy behaviour
+| Local template
+| | [Documentation]
+| | ... | [Cfg] DUT runs IPv6 over SRv6 routing config with ${phy_cores} phy
+| | ... | core(s).
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
+| | ... | trial throughput test.
+| | ...
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize}
+| | [Arguments] | ${phy_cores} | ${framesize} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test teardown
| | Set Test Variable | ${framesize}
-| | Set Test Variable | ${rxq}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ... | ${get_framesize} + ${srv6_overhead_3sids}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} + ${srv6_overhead_3sids} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-78B-1t1c-ethip6srhip6-ip6base-srv6proxy-stat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with static SRv6 proxy config\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 1C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via static proxy behaviour
-| | wt=1 | rxq=1 | framesize=${78}
+| | phy_cores=${1} | framesize=${78}
| tc02-1518B-1t1c-ethip6srhip6-ip6base-srv6proxy-stat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with static SRv6 proxy config\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via static proxy behaviour
-| | wt=1 | rxq=1 | framesize=${1518}
+| | phy_cores=${1} | framesize=${1518}
| tc03-9000B-1t1c-ethip6srhip6-ip6base-srv6proxy-stat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with static SRv6 proxy config\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via static proxy behaviour
-| | wt=1 | rxq=1 | framesize=${9000}
+| | phy_cores=${1} | framesize=${9000}
| tc04-IMIX-1t1c-ethip6srhip6-ip6base-srv6proxy-stat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with static SRv6 proxy config\
-| | ... | 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via static proxy behaviour
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${1} | framesize=IMIX_v4_1
| tc05-78B-2t2c-ethip6srhip6-ip6base-srv6proxy-stat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with static SRv6 proxy config\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 2C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via static proxy behaviour
-| | wt=2 | rxq=1 | framesize=${78}
+| | phy_cores=${2} | framesize=${78}
| tc06-1518B-2t2c-ethip6srhip6-ip6base-srv6proxy-stat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with static SRv6 proxy config\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via static proxy behaviour
-| | wt=2 | rxq=1 | framesize=${1518}
+| | phy_cores=${2} | framesize=${1518}
| tc07-9000B-2t2c-ethip6srhip6-ip6base-srv6proxy-stat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with static SRv6 proxy config\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via static proxy behaviour
-| | wt=2 | rxq=1 | framesize=${9000}
+| | phy_cores=${2} | framesize=${9000}
| tc08-IMIX-2t2c-ethip6srhip6-ip6base-srv6proxy-stat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with static SRv6 proxy config\
-| | ... | 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via static proxy behaviour
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1
+| | phy_cores=${2} | framesize=IMIX_v4_1
| tc09-78B-4t4c-ethip6srhip6-ip6base-srv6proxy-stat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with static SRv6 proxy config\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 78B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 78B | 4C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via static proxy behaviour
-| | wt=4 | rxq=2 | framesize=${78}
+| | phy_cores=${4} | framesize=${78}
| tc10-1518B-4t4c-ethip6srhip6-ip6base-srv6proxy-stat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with static SRv6 proxy config\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via static proxy behaviour
-| | wt=4 | rxq=2 | framesize=${1518}
+| | phy_cores=${4} | framesize=${1518}
| tc11-9000B-4t4c-ethip6srhip6-ip6base-srv6proxy-stat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with static SRv6 proxy config\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single trial\
-| | ... | throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via static proxy behaviour
-| | wt=4 | rxq=2 | framesize=${9000}
+| | phy_cores=${4} | framesize=${9000}
| tc12-IMIX-4t4c-ethip6srhip6-ip6base-srv6proxy-stat-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with static SRv6 proxy config\
-| | ... | 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single trial\
-| | ... | throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via static proxy behaviour
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1
+| | phy_cores=${4} | framesize=IMIX_v4_1
| Test Teardown | Tear down performance test with SRv6 with encapsulation
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Packet throughput Segment routing over IPv6 dataplane with\
| ... | Static SRv6 proxy test cases*
| ...
| ${container_cpus}= | ${5}
*** Keywords ***
-| Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via static proxy behaviour
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type}
+| | ... | ${min_rate}=${50000} | ${rxq}=${None}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
-| | Set Test Variable | ${rxq}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ... | ${get_framesize} + ${srv6_overhead_3sids}
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${binary_max}= | Set Variable | ${max_rate}
| | ${threshold}= | Set Variable | ${min_rate}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} + ${srv6_overhead_3sids} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-78B-1t1c-ethip6srhip6-ip6base-srv6proxy-stat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with static SRv6 proxy config\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 78B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via static proxy behaviour
-| | wt=1 | rxq=1 | framesize=${78} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${78} | search_type=NDR
| tc02-78B-1t1c-ethip6srhip6-ip6base-srv6proxy-stat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with static SRv6 proxy config\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 78B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via static proxy behaviour
-| | wt=1 | rxq=1 | framesize=${78} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${78} | search_type=PDR
| tc03-78B-2t2c-ethip6srhip6-ip6base-srv6proxy-stat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with static SRv6 proxy config\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 78B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via static proxy behaviour
-| | wt=2 | rxq=1 | framesize=${78} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${78} | search_type=NDR
| tc04-78B-2t2c-ethip6srhip6-ip6base-srv6proxy-stat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with static SRv6 proxy config\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 78B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via static proxy behaviour
-| | wt=2 | rxq=1 | framesize=${78} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${78} | search_type=PDR
| tc05-78B-4t4c-ethip6srhip6-ip6base-srv6proxy-stat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with static SRv6 proxy config\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 78B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via static proxy behaviour
-| | wt=4 | rxq=2 | framesize=${78} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${78} | search_type=NDR
| tc06-78B-4t4c-ethip6srhip6-ip6base-srv6proxy-stat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with static SRv6 proxy config\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 78 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 78B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via static proxy behaviour
-| | wt=4 | rxq=2 | framesize=${78} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${78} | search_type=PDR
| tc07-1518B-1t1c-ethip6srhip6-ip6base-srv6proxy-stat-ndrdisc
-| | [Documentation]
-| | ... | [[Cfg] DUT runs IPv6 over SRv6 routing with static SRv6 proxy config\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via static proxy behaviour
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc08-1518B-1t1c-ethip6srhip6-ip6base-srv6proxy-stat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with static SRv6 proxy config\
-| | ... | with 1 phy core, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via static proxy behaviour
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc09-1518B-2t2c-ethip6srhip6-ip6base-srv6proxy-stat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with static SRv6 proxy config\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via static proxy behaviour
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-ethip6srhip6-ip6base-srv6proxy-stat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with static SRv6 proxy config\
-| | ... | with 2 phy cores, 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via static proxy behaviour
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-1518B-4t4c-ethip6srhip6-ip6base-srv6proxy-stat-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with static SRv6 proxy config\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via static proxy behaviour
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc12-1518B-4t4c-ethip6srhip6-ip6base-srv6proxy-stat-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv6 over SRv6 routing with static SRv6 proxy config\
-| | ... | with 4 phy cores, 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 50kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv6 routing over SRv6 with endpoint to SR-unaware Service Function via static proxy behaviour
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${50000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| Test Setup | Set up tcp performance test
| Test Teardown | Tear down performance test with wrk
| ...
+| Test Template | Local template
+| ...
| Documentation | *HTTP requests per seconds, connections per seconds and
| ... | throughput measurement.*
| ...
| ... | *[Ref] Applicable standard specifications:*
*** Keywords ***
-| Measure throughput or rps or cps
-| | [Arguments] | ${traffic_profile} | ${wt} | ${rxq} | ${test_type}
+| Local template
+| | [Arguments] | ${traffic_profile} | ${phy_cores} | ${test_type}
+| | ... | ${rxq}=${None}
| | ...
-| | Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | Add PCI devices to all DUTs
| | ${duts}= | Get Matches | ${nodes} | DUT*
| | :FOR | ${dut} | IN | @{duts}
| | ... | Measure number of connections per second using wrk.
| | ...
| | [Tags] | 1C | TCP_CPS
-| | ...
-| | [Template] | Measure throughput or rps or cps
-| | traffic_profile=wrk-sf-2n-ethip4tcphttp-8u8c50con-cps | wt=1 | rxq=1
+| | traffic_profile=wrk-sf-2n-ethip4tcphttp-8u8c50con-cps | phy_cores=${1}
| | ... | test_type=cps
| tc02-2t2c-ethip4tcphttp-httpserver-cps
| | ... | Measure number of connections per second using wrk.
| | ...
| | [Tags] | 2C | TCP_CPS
-| | ...
-| | [Template] | Measure throughput or rps or cps
-| | traffic_profile=wrk-sf-2n-ethip4tcphttp-8u8c50con-cps | wt=2 | rxq=2
+| | traffic_profile=wrk-sf-2n-ethip4tcphttp-8u8c50con-cps | phy_cores=${2}
| | ... | test_type=cps
| tc03-4t4c-ethip4tcphttp-httpserver-cps
| | ... | Measure number of connections per second using wrk.
| | ...
| | [Tags] | 4C | TCP_CPS
-| | ...
-| | [Template] | Measure throughput or rps or cps
-| | traffic_profile=wrk-sf-2n-ethip4tcphttp-8u8c50con-cps | wt=4 | rxq=4
+| | traffic_profile=wrk-sf-2n-ethip4tcphttp-8u8c50con-cps | phy_cores=${4}
| | ... | test_type=cps
| tc04-1t1c-ethip4tcphttp-httpserver-rps
| | ... | Measure and report number of requests per second using wrk.
| | ...
| | [Tags] | 1C | TCP_RPS
-| | ...
-| | [Template] | Measure throughput or rps or cps
-| | traffic_profile=wrk-sf-2n-ethip4tcphttp-8u8c50con-rps | wt=1 | rxq=1
+| | traffic_profile=wrk-sf-2n-ethip4tcphttp-8u8c50con-rps | phy_cores=${1}
| | ... | test_type=rps
| tc05-2t2c-ethip4tcphttp-httpserver-rps
| | ... | Measure and report number of requests per second using wrk.
| | ...
| | [Tags] | 2C | TCP_RPS
-| | ...
-| | [Template] | Measure throughput or rps or cps
-| | traffic_profile=wrk-sf-2n-ethip4tcphttp-8u8c50con-rps | wt=2 | rxq=2
+| | traffic_profile=wrk-sf-2n-ethip4tcphttp-8u8c50con-rps | phy_cores=${2}
| | ... | test_type=rps
| tc06-4t4c-ethip4tcphttp-httpserver-rps
| | ... | Measure and report number of requests per second using wrk.
| | ...
| | [Tags] | 4C | TCP_RPS
-| | ...
-| | [Template] | Measure throughput or rps or cps
-| | traffic_profile=wrk-sf-2n-ethip4tcphttp-8u8c50con-rps | wt=4 | rxq=4
+| | traffic_profile=wrk-sf-2n-ethip4tcphttp-8u8c50con-rps | phy_cores=${4}
| | ... | test_type=rps
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases with vhost and dpdk link bonding*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ${jumbo_frames}= | Set Variable If
| | ... | ${get_framesize + ${vlan_overhead}} < ${1522} | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Add VLAN Strip Offload switch off between DUTs in 3-node single link topology
| | And Add DPDK bonded Ethernet interfaces to DUTs in 3-node single link topology
*** Test Cases ***
| tc01-64B-1t1c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with vhost and
| ... | dpdk link bonding*
| ...
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Discover NDR or PDR for ${framesize} frames using xxx\
-| | ... | trial throughput test.
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type} | ${rxq}=${None}
+| | ... | ${min_rate}=${10000}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${jumbo_frames}= | Set Variable If
| | ... | ${get_framesize + ${vlan_overhead}} < ${1522} | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Add VLAN Strip Offload switch off between DUTs in 3-node single link topology
| | And Add DPDK bonded Ethernet interfaces to DUTs in 3-node single link topology
*** Test Cases ***
| tc01-64B-1t1c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-9000B-1t1c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${9000} | search_type=NDR
| tc06-9000B-1t1c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${9000} | search_type=PDR
| tc07-IMIX-1t1c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc08-IMIX-1t1c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc09-64B-2t2c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc10-64B-2t2c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc11-1518B-2t2c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc12-1518B-2t2c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc13-9000B-2t2c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${9000} | search_type=NDR
| tc14-9000B-2t2c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${9000} | search_type=PDR
| tc15-IMIX-2t2c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc16-IMIX-2t2c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc17-64B-4t4c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc18-64B-4t4c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc19-1518B-4t4c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc20-1518B-4t4c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc21-9000B-4t4c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${9000} | search_type=NDR
| tc22-9000B-4t4c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${9000} | search_type=PDR
| tc23-IMIX-4t4c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc24-IMIX-4t4c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2XC test cases with vhost and dpdk link bonding*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ${jumbo_frames}= | Set Variable If
| | ... | ${get_framesize + ${vlan_overhead}} < ${1522} | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Add VLAN Strip Offload switch off between DUTs in 3-node single link topology
| | And Add DPDK bonded Ethernet interfaces to DUTs in 3-node single link topology
*** Test Cases ***
| tc01-64B-1t1c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2XC test cases with vhost and
| ... | dpdk link bonding*
| ...
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
-| | ... | trial throughput test.
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type} | ${rxq}=${None}
+| | ... | ${min_rate}=${10000}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${jumbo_frames}= | Set Variable If
| | ... | ${get_framesize + ${vlan_overhead}} < ${1522} | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Add VLAN Strip Offload switch off between DUTs in 3-node single link topology
| | And Add DPDK bonded Ethernet interfaces to DUTs in 3-node single link topology
*** Test Cases ***
| tc01-64B-1t1c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-9000B-1t1c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${9000} | search_type=NDR
| tc06-9000B-1t1c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${9000} | search_type=PDR
| tc07-IMIX-1t1c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc08-IMIX-1t1c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc09-64B-2t2c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc10-64B-2t2c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc11-1518B-2t2c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc12-1518B-2t2c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc13-9000B-2t2c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${9000} | search_type=NDR
| tc14-9000B-2t2c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${9000} | search_type=PDR
| tc15-IMIX-2t2c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc16-IMIX-2t2c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc17-64B-4t4c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc18-64B-4t4c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc19-1518B-4t4c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc20-1518B-4t4c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc21-9000B-4t4c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${9000} | search_type=NDR
| tc22-9000B-4t4c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${9000} | search_type=PDR
| tc23-IMIX-4t4c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc24-IMIX-4t4c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases with vhost and vpp link bonding*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ${jumbo_frames}= | Set Variable If
| | ... | ${get_framesize + ${vlan_overhead}} < ${1522} | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Add VLAN Strip Offload switch off between DUTs in 3-node single link topology
| | And Run Keyword If | ${get_framesize + ${vlan_overhead}} < ${1522}
*** Test Cases ***
| tc01-64B-1t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with vhost and
| ... | vpp link bonding*
| ...
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Discover NDR or PDR for ${framesize} frames using xxx\
-| | ... | trial throughput test.
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type} | ${rxq}=${None}
+| | ... | ${min_rate}=${10000}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${jumbo_frames}= | Set Variable If
| | ... | ${get_framesize + ${vlan_overhead}} < ${1522} | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Add VLAN Strip Offload switch off between DUTs in 3-node single link topology
| | And Run Keyword If | ${get_framesize + ${vlan_overhead}} < ${1522}
*** Test Cases ***
| tc01-64B-1t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-9000B-1t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${9000} | search_type=NDR
| tc06-9000B-1t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${9000} | search_type=PDR
| tc07-IMIX-1t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc08-IMIX-1t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc09-64B-2t2c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc10-64B-2t2c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc11-1518B-2t2c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc12-1518B-2t2c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc13-9000B-2t2c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${9000} | search_type=NDR
| tc14-9000B-2t2c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${9000} | search_type=PDR
| tc15-IMIX-2t2c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc16-IMIX-2t2c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc17-64B-4t4c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc18-64B-4t4c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc19-1518B-4t4c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc20-1518B-4t4c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc21-9000B-4t4c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${9000} | search_type=NDR
| tc22-9000B-4t4c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${9000} | search_type=PDR
| tc23-IMIX-4t4c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc24-IMIX-4t4c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2XC test cases with vhost and vpp link bonding*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ${jumbo_frames}= | Set Variable If
| | ... | ${get_framesize + ${vlan_overhead}} < ${1522} | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Add VLAN Strip Offload switch off between DUTs in 3-node single link topology
| | And Run Keyword If | ${get_framesize + ${vlan_overhead}} < ${1522}
*** Test Cases ***
| tc01-64B-1t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2XC test cases with vhost and
| ... | vpp link bonding*
| ...
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
-| | ... | trial throughput test.
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type} | ${rxq}=${None}
+| | ... | ${min_rate}=${10000}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${jumbo_frames}= | Set Variable If
| | ... | ${get_framesize + ${vlan_overhead}} < ${1522} | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Add VLAN Strip Offload switch off between DUTs in 3-node single link topology
| | And Run Keyword If | ${get_framesize + ${vlan_overhead}} < ${1522}
*** Test Cases ***
| tc01-64B-1t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-9000B-1t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${9000} | search_type=NDR
| tc06-9000B-1t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${9000} | search_type=PDR
| tc07-IMIX-1t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc08-IMIX-1t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc09-64B-2t2c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc10-64B-2t2c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc11-1518B-2t2c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc12-1518B-2t2c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc13-9000B-2t2c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${9000} | search_type=NDR
| tc14-9000B-2t2c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${9000} | search_type=PDR
| tc15-IMIX-2t2c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc16-IMIX-2t2c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc17-64B-4t4c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc18-64B-4t4c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc19-1518B-4t4c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc20-1518B-4t4c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc21-9000B-4t4c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${9000} | search_type=NDR
| tc22-9000B-4t4c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${9000} | search_type=PDR
| tc23-IMIX-4t4c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc24-IMIX-4t4c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ${jumbo_frames}= | Set Variable If | ${get_framesize} < ${1522}
| | ... | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2XC test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for dot1q-l2xcbase-eth-2vhostvr1024-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC switching config with.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ${jumbo_frames}= | Set Variable If | ${get_framesize} < ${1522}
| | ... | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with VM
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type} | ${rxq}=${None}
+| | ... | ${min_rate}=${10000}
| | ...
| | Set Test Variable | ${use_tuned_cfs} | ${True}
| | Set Test Variable | ${framesize}
| | ${dut2_vm_refs}= | Create Dictionary
| | Set Test Variable | ${dut1_vm_refs}
| | Set Test Variable | ${dut2_vm_refs}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-etc-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-IMIX-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc12-IMIX-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc13-64B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-IMIX-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc18-IMIX-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ${jumbo_frames}= | Set Variable If | ${get_framesize} < ${1522}
| | ... | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc10-9000B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
-| Test Template | Find NDRPDR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
+| Test Template | Local template
*** Variables ***
| ${perf_qemu_qsz}= | 1024
| ${traffic_profile} | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Find NDRPDR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
+| | ... | [Cfg] DUT runs L2BD switching config with ${phy_cores} phy cores.
| | ... | [Ver] Find NDR for ${framesize} frames \
| | ... | using binary search start at 10GE linerate.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_unidirectional_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ${jumbo_frames}= | Set Variable If | ${get_framesize} < ${1522}
| | ... | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
| | [Tags] | 64B | 1C
-| | ...
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
| | [Tags] | 1518B | 1C
-| | ...
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
| | [Tags] | 9000B | 1C
-| | ...
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
| | [Tags] | IMIX | 1C
-| | ...
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
| | [Tags] | 64B | 2C
-| | ...
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
| | [Tags] | 1518B | 2C
-| | ...
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
| | [Tags] | 9000B | 2C
-| | ...
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
| | [Tags] | IMIX | 2C
-| | ...
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
| | [Tags] | 64B | 4C
-| | ...
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
| | [Tags] | 1518B | 4C
-| | ...
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
| | [Tags] | 9000B | 4C
-| | ...
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr
| | [Tags] | IMIX | 4C
-| | ...
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with VM
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
-| | ...
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with required number of threads,\
-| | ... | phy cores and receive queues per NIC port.
-| | ... | [Ver] Find NDR or PDR for defined frame size using binary search\
-| | ... | start at 10GE linerate with specified step.
-| | ...
-| | ... | *Arguments:*
-| | ... | - wt - Number of worker threads to be used. Type: integer
-| | ... | - rxq - Number of Rx queues to be used. Type: integer
-| | ... | - framesize - L2 Frame Size [B]. Type: integer
-| | ... | - min_rate - Lower limit of search [pps]. Type: float
-| | ... | - search_type - Type of the search - non drop rate (NDR) or partial
-| | ... | drop rare (PDR). Type: string
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type} | ${rxq}=${None}
+| | ... | ${min_rate}=${10000}
| | ...
| | Set Test Variable | ${use_tuned_cfs} | ${True}
| | Set Test Variable | ${framesize}
| | ${dut2_vm_refs}= | Create Dictionary
| | Set Test Variable | ${dut1_vm_refs}
| | Set Test Variable | ${dut2_vm_refs}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-etc-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-IMIX-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc12-IMIX-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc13-64B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-IMIX-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc18-IMIX-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ${jumbo_frames}= | Set Variable If | ${get_framesize} < ${1522}
| | ... | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with VM
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
-| | ...
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with required number of threads,\
-| | ... | phy cores and receive queues per NIC port.
-| | ... | [Ver] Find NDR or PDR for defined frame size using binary search\
-| | ... | start at 10GE linerate with specified step.
-| | ...
-| | ... | *Arguments:*
-| | ... | - wt - Number of worker threads to be used. Type: integer
-| | ... | - rxq - Number of Rx queues to be used. Type: integer
-| | ... | - framesize - L2 Frame Size [B]. Type: integer
-| | ... | - min_rate - Lower limit of search [pps]. Type: float
-| | ... | - search_type - Type of the search - non drop rate (NDR) or partial
-| | ... | drop rare (PDR). Type: string
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type} | ${rxq}=${None}
+| | ... | ${min_rate}=${10000}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${dut2_vm_refs}= | Create Dictionary
| | Set Test Variable | ${dut1_vm_refs}
| | Set Test Variable | ${dut2_vm_refs}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-etc-l2bdbasemaclrn-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-IMIX-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc12-IMIX-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc13-64B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-IMIX-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc18-IMIX-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ... | ${False} | ${True}
| | Set Test Variable | ${jumbo_frames}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Pkt throughput L2BD test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Find NDR for ${framesize} frames using binary search start at
-| | ... | 10GE linerate, step 10kpps.
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type} | ${rxq}=${None}
+| | ... | ${min_rate}=${10000}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ... | ${False} | ${True}
| | Set Test Variable | ${jumbo_frames}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-IMIX-2t2c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc12-IMIX-2t2c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc13-64B-4t4c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-IMIX-4t4c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc18-IMIX-4t4c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile}= | trex-sl-3n-ethip4-macsrc50kdst50k
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with VM
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type} | ${rxq}=${None}
+| | ... | ${min_rate}=${10000}
| | ...
| | Set Test Variable | ${use_tuned_cfs} | ${True}
| | Set Test Variable | ${framesize}
| | ${dut2_vm_refs}= | Create Dictionary
| | Set Test Variable | ${dut1_vm_refs}
| | Set Test Variable | ${dut2_vm_refs}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2dbscale100kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2dbscale100kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-etc-l2dbscale100kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-eth-l2dbscale100kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-eth-l2dbscale100kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-eth-l2dbscale100kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-eth-l2dbscale100kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-eth-l2dbscale100kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-eth-l2dbscale100kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-eth-l2dbscale100kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-IMIX-2t2c-eth-l2dbscale100kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc12-IMIX-2t2c-eth-l2dbscale100kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc13-64B-4t4c-eth-l2dbscale100kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-eth-l2dbscale100kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-eth-l2dbscale100kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-eth-l2dbscale100kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-IMIX-4t4c-eth-l2dbscale100kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc18-IMIX-4t4c-eth-l2dbscale100kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip4-macsrc5kdst5k
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with VM
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type} | ${rxq}=${None}
+| | ... | ${min_rate}=${10000}
| | ...
| | Set Test Variable | ${use_tuned_cfs} | ${True}
| | Set Test Variable | ${framesize}
| | ${dut2_vm_refs}= | Create Dictionary
| | Set Test Variable | ${dut1_vm_refs}
| | Set Test Variable | ${dut2_vm_refs}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2dbscale10kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2dbscale10kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-etc-l2dbscale10kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-eth-l2dbscale10kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-eth-l2dbscale10kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-eth-l2dbscale10kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-eth-l2dbscale10kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-eth-l2dbscale10kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-eth-l2dbscale10kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-eth-l2dbscale10kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-IMIX-2t2c-eth-l2dbscale10kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc12-IMIX-2t2c-eth-l2dbscale10kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc13-64B-4t4c-eth-l2dbscale10kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-eth-l2dbscale10kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-eth-l2dbscale10kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-eth-l2dbscale10kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-IMIX-4t4c-eth-l2dbscale10kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc18-IMIX-4t4c-eth-l2dbscale10kmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\
| ${traffic_profile}= | trex-sl-3n-ethip4-macsrc500kdst500k
*** Keywords ***
-| Discover NDR or PDR for L2 Bridge Domain with VM
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type} | ${rxq}=${None}
+| | ... | ${min_rate}=${10000}
| | ...
| | Set Test Variable | ${use_tuned_cfs} | ${True}
| | Set Test Variable | ${framesize}
| | ${dut2_vm_refs}= | Create Dictionary
| | Set Test Variable | ${dut1_vm_refs}
| | Set Test Variable | ${dut2_vm_refs}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2dbscale1mmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2dbscale1mmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-etc-l2dbscale1mmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-eth-l2dbscale1mmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-eth-l2dbscale1mmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-eth-l2dbscale1mmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-eth-l2dbscale1mmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-eth-l2dbscale1mmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-eth-l2dbscale1mmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-eth-l2dbscale1mmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-IMIX-2t2c-eth-l2dbscale1mmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc12-IMIX-2t2c-eth-l2dbscale1mmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc13-64B-4t4c-eth-l2dbscale1mmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-eth-l2dbscale1mmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-eth-l2dbscale1mmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-eth-l2dbscale1mmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-IMIX-4t4c-eth-l2dbscale1mmaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc18-IMIX-4t4c-eth-l2dbscale1mmaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 Bridge Domain with VM
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Discover NDR or PDR for L2 xconnect with VM
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type} | ${rxq}=${None}
+| | ... | ${min_rate}=${10000}
| | ...
| | Set Test Variable | ${use_tuned_cfs} | ${True}
| | Set Test Variable | ${framesize}
| | ${dut2_vm_refs}= | Create Dictionary
| | Set Test Variable | ${dut1_vm_refs}
| | Set Test Variable | ${dut2_vm_refs}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-etc-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-IMIX-2t2c-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc12-IMIX-2t2c-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc13-64B-4t4c-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-IMIX-4t4c-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc18-IMIX-4t4c-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2XC test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for eth-l2xcbase-eth-2vhostvr1024-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ${jumbo_frames}= | Set Variable If | ${get_framesize} < ${1522}
| | ... | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2XC test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Discover NDR or PDR for L2 xconnect with VM
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
-| | ...
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with required number of threads,\
-| | ... | phy cores and receive queues per NIC port.
-| | ... | [Ver] Find NDR or PDR for defined frame size using binary search\
-| | ... | start at 10GE linerate with specified step.
-| | ...
-| | ... | *Arguments:*
-| | ... | - wt - Number of worker threads to be used. Type: integer
-| | ... | - rxq - Number of Rx queues to be used. Type: integer
-| | ... | - framesize - L2 Frame Size [B]. Type: integer
-| | ... | - min_rate - Lower limit of search [pps]. Type: float
-| | ... | - search_type - Type of the search - non drop rate (NDR) or partial
-| | ... | drop rare (PDR). Type: string
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type} | ${rxq}=${None}
+| | ... | ${min_rate}=${10000}
| | ...
| | Set Test Variable | ${use_tuned_cfs} | ${True}
| | Set Test Variable | ${framesize}
| | ${dut2_vm_refs}= | Create Dictionary
| | Set Test Variable | ${dut1_vm_refs}
| | Set Test Variable | ${dut2_vm_refs}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-etc-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-IMIX-2t2c-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc12-IMIX-2t2c-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc13-64B-4t4c-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-IMIX-4t4c-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc18-IMIX-4t4c-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2XC test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for eth-l2xcbase-eth-2vhostvr256-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ${jumbo_frames}= | Set Variable If | ${get_framesize} < ${1522}
| | ... | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2xcbase-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr256-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2xcbase-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr256-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2xcbase-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr256-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2xcbase-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr256-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2xcbase-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr256-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2xcbase-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr256-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2xcbase-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr256-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2xcbase-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr256-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2xcbase-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr256-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2xcbase-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr256-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2xcbase-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr256-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2xcbase-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr256-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2XC test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Discover NDR or PDR for L2 xconnect with VM
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
-| | ...
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with required number of threads,\
-| | ... | phy cores and receive queues per NIC port.
-| | ... | [Ver] Find NDR or PDR for defined frame size using binary search\
-| | ... | start at 10GE linerate with specified step.
-| | ...
-| | ... | *Arguments:*
-| | ... | - wt - Number of worker threads to be used. Type: integer
-| | ... | - rxq - Number of Rx queues to be used. Type: integer
-| | ... | - framesize - L2 Frame Size [B]. Type: integer
-| | ... | - min_rate - Lower limit of search [pps]. Type: float
-| | ... | - search_type - Type of the search - non drop rate (NDR) or partial
-| | ... | drop rare (PDR). Type: string
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type} | ${rxq}=${None}
+| | ... | ${min_rate}=${10000}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${dut2_vm_refs}= | Create Dictionary
| | Set Test Variable | ${dut1_vm_refs}
| | Set Test Variable | ${dut2_vm_refs}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2xcbase-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2xcbase-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-etc-l2xcbase-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-eth-l2xcbase-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-eth-l2xcbase-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-eth-l2xcbase-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-eth-l2xcbase-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-eth-l2xcbase-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-eth-l2xcbase-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-eth-l2xcbase-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-IMIX-2t2c-eth-l2xcbase-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc12-IMIX-2t2c-eth-l2xcbase-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc13-64B-4t4c-eth-l2xcbase-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-eth-l2xcbase-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-eth-l2xcbase-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-eth-l2xcbase-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-IMIX-4t4c-eth-l2xcbase-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc18-IMIX-4t4c-eth-l2xcbase-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for L2 xconnect with VM
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2XC test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ... | ${False} | ${True}
| | Set Test Variable | ${jumbo_frames}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Pkt throughput L2XC test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Find NDR for ${framesize} frames using binary search start at
-| | ... | 10GE linerate, step 10kpps.
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type} | ${rxq}=${None}
+| | ... | ${min_rate}=${10000}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ... | ${False} | ${True}
| | Set Test Variable | ${jumbo_frames}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2xcbase-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-eth-l2xcbase-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-eth-l2xcbase-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-eth-l2xcbase-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-eth-l2xcbase-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-IMIX-2t2c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc12-IMIX-2t2c-eth-l2xcbase-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc13-64B-4t4c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-eth-l2xcbase-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-eth-l2xcbase-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-IMIX-4t4c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc18-IMIX-4t4c-eth-l2xcbase-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Discover NDR or PDR for IPv4 forwarding with VM
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type} | ${rxq}=${None}
+| | ... | ${min_rate}=${10000}
| | ...
| | Set Test Variable | ${use_tuned_cfs} | ${True}
| | Set Test Variable | ${framesize}
| | ${dut2_vm_refs}= | Create Dictionary
| | Set Test Variable | ${dut1_vm_refs}
| | Set Test Variable | ${dut2_vm_refs}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-etc-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-IMIX-2t2c-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc12-IMIX-2t2c-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc13-64B-4t4c-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-IMIX-4t4c-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc18-IMIX-4t4c-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Check RR for ethip4-ip4base-eth-2vhostvr1024-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ${jumbo_frames}= | Set Variable If | ${get_framesize} < ${1522}
| | ... | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-ethip4-ip4base-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-ethip4-ip4base-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-ethip4-ip4base-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-ethip4-ip4base-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-ethip4-ip4base-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-ethip4-ip4base-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-ethip4-ip4base-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-ethip4-ip4base-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-ethip4-ip4base-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-ethip4-ip4base-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-ethip4-ip4base-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IP4 test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Discover NDR or PDR for IPv4 forwarding with VM
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type} | ${rxq}=${None}
+| | ... | ${min_rate}=${10000}
| | ...
| | [Documentation]
| | ... | [Cfg] DUT runs IP4 routing config with required number of threads,\
| | ${dut2_vm_refs}= | Create Dictionary
| | Set Test Variable | ${dut1_vm_refs}
| | Set Test Variable | ${dut2_vm_refs}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c--ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-IMIX-2t2c-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc12-IMIX-2t2c-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc13-64B-4t4c-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-IMIX-4t4c-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc18-IMIX-4t4c-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Check RR for eth-ip4base-eth-2vhostvr256-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config with.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ${jumbo_frames}= | Set Variable If | ${get_framesize} < ${1522}
| | ... | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for eth-ip4base-eth-2vhostvr256-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-ethip4-ip4base-eth-2vhostvr256-1vm
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for eth-ip4base-eth-2vhostvr256-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-ethip4-ip4base-eth-2vhostvr256-1vm
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for eth-ip4base-eth-2vhostvr256-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-ethip4-ip4base-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for eth-ip4base-eth-2vhostvr256-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-ethip4-ip4base-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for eth-ip4base-eth-2vhostvr256-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-ethip4-ip4base-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for eth-ip4base-eth-2vhostvr256-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-ethip4-ip4base-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for eth-ip4base-eth-2vhostvr256-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-ethip4-ip4base-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for eth-ip4base-eth-2vhostvr256-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-ethip4-ip4base-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for eth-ip4base-eth-2vhostvr256-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-ethip4-ip4base-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for eth-ip4base-eth-2vhostvr256-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-ethip4-ip4base-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for eth-ip4base-eth-2vhostvr256-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-ethip4-ip4base-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for eth-ip4base-eth-2vhostvr256-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IP4 test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Discover NDR or PDR for IPv4 forwarding with VM
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
-| | ...
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with required number of threads,\
-| | ... | phy cores and receive queues per NIC port.
-| | ... | [Ver] Find NDR or PDR for defined frame size using binary search\
-| | ... | start at 10GE linerate with specified step.
-| | ...
-| | ... | *Arguments:*
-| | ... | - wt - Number of worker threads to be used. Type: integer
-| | ... | - rxq - Number of Rx queues to be used. Type: integer
-| | ... | - framesize - L2 Frame Size [B]. Type: integer
-| | ... | - min_rate - Lower limit of search [pps]. Type: float
-| | ... | - search_type - Type of the search - non drop rate (NDR) or partial
-| | ... | drop rare (PDR). Type: string
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type} | ${rxq}=${None}
+| | ... | ${min_rate}=${10000}
| | ...
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${dut2_vm_refs}= | Create Dictionary
| | Set Test Variable | ${dut1_vm_refs}
| | Set Test Variable | ${dut2_vm_refs}
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522} | Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4-ip4base-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-ethip4-ip4base-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-ethip4-ip4base-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-ethip4-ip4base-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-ethip4-ip4base-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-ethip4-ip4base-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-ethip4-ip4base-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-ethip4-ip4base-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-ethip4-ip4base-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-IMIX-2t2c-ethip4-ip4base-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc12-IMIX-2t2c-ethip4-ip4base-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc13-64B-4t4c-ethip4-ip4base-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-ethip4-ip4base-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-ethip4-ip4base-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-ethip4-ip4base-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-IMIX-4t4c-ethip4-ip4base-eth-2vhostvr256-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc18-IMIX-4t4c-ethip4-ip4base-eth-2vhostvr256-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VM
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Check RR for ethip4-ip4base-eth-4vhostvr1024-2vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ... | ${False} | ${True}
| | Set Test Variable | ${jumbo_frames}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-ethip4-ip4base-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-ethip4-ip4base-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-ethip4-ip4base-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-ethip4-ip4base-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-ethip4-ip4base-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-ethip4-ip4base-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-ethip4-ip4base-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-ethip4-ip4base-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-ethip4-ip4base-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-ethip4-ip4base-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-ethip4-ip4base-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Pkt throughput IPv4 test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Find NDR for ${framesize} frames using binary search start at
-| | ... | 10GE linerate, step 10kpps.
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type} | ${rxq}=${None}
+| | ... | ${min_rate}=${10000}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ... | ${False} | ${True}
| | Set Test Variable | ${jumbo_frames}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4-ip4base-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-ethip4-ip4base-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-ethip4-ip4base-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-ethip4-ip4base-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-ethip4-ip4base-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-ethip4-ip4base-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-ethip4-ip4base-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-ethip4-ip4base-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-ethip4-ip4base-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-IMIX-2t2c-ethip4-ip4base-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc12-IMIX-2t2c-ethip4-ip4base-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc13-64B-4t4c-ethip4-ip4base-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-ethip4-ip4base-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-ethip4-ip4base-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-ethip4-ip4base-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames \
-| | ... | using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-IMIX-4t4c-ethip4-ip4base-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc18-IMIX-4t4c-ethip4-ip4base-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases with VXLANoIPv4
| ... | and vhost*
| ...
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ${jumbo_frames}= | Set Variable If | ${get_framesize} < ${1522}
| | ... | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize L2 bridge domains with Vhost-User and VXLANoIPv4 in 3-node circular topology
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize L2 bridge domains with Vhost-User and VXLANoIPv4 in 3-node circular topology
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize L2 bridge domains with Vhost-User and VXLANoIPv4 in 3-node circular topology
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize L2 bridge domains with Vhost-User and VXLANoIPv4 in 3-node circular topology
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize L2 bridge domains with Vhost-User and VXLANoIPv4 in 3-node circular topology
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize L2 bridge domains with Vhost-User and VXLANoIPv4 in 3-node circular topology
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize L2 bridge domains with Vhost-User and VXLANoIPv4 in 3-node circular topology
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize L2 bridge domains with Vhost-User and VXLANoIPv4 in 3-node circular topology
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize L2 bridge domains with Vhost-User and VXLANoIPv4 in 3-node circular topology
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize L2 bridge domains with Vhost-User and VXLANoIPv4 in 3-node circular topology
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize L2 bridge domains with Vhost-User and VXLANoIPv4 in 3-node circular topology
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize L2 bridge domains with Vhost-User and VXLANoIPv4 in 3-node circular topology
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases with vhost and dpdk link bonding*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ${jumbo_frames}= | Set Variable If
| | ... | ${get_framesize + ${vlan_overhead}} < ${1522} | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Add VLAN Strip Offload switch off between DUTs in 3-node single link topology
| | And Add DPDK bonded Ethernet interfaces to DUTs in 3-node single link topology
*** Test Cases ***
| tc01-64B-1t1c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with vhost and
| ... | dpdk link bonding*
| ...
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Discover NDR or PDR for ${framesize} frames using xxx\
-| | ... | trial throughput test.
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type} | ${rxq}=${None}
+| | ... | ${min_rate}=${10000}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${jumbo_frames}= | Set Variable If
| | ... | ${get_framesize + ${vlan_overhead}} < ${1522} | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Add VLAN Strip Offload switch off between DUTs in 3-node single link topology
| | And Add DPDK bonded Ethernet interfaces to DUTs in 3-node single link topology
*** Test Cases ***
| tc01-64B-1t1c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-9000B-1t1c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${9000} | search_type=NDR
| tc06-9000B-1t1c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${9000} | search_type=PDR
| tc07-IMIX-1t1c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc08-IMIX-1t1c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc09-64B-2t2c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc10-64B-2t2c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc11-1518B-2t2c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc12-1518B-2t2c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc13-9000B-2t2c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${9000} | search_type=NDR
| tc14-9000B-2t2c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${9000} | search_type=PDR
| tc15-IMIX-2t2c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc16-IMIX-2t2c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc17-64B-4t4c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc18-64B-4t4c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc19-1518B-4t4c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc20-1518B-4t4c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc21-9000B-4t4c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${9000} | search_type=NDR
| tc22-9000B-4t4c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${9000} | search_type=PDR
| tc23-IMIX-4t4c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc24-IMIX-4t4c-1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2XC test cases with vhost and dpdk link bonding*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ${jumbo_frames}= | Set Variable If
| | ... | ${get_framesize + ${vlan_overhead}} < ${1522} | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Add VLAN Strip Offload switch off between DUTs in 3-node single link topology
| | And Add DPDK bonded Ethernet interfaces to DUTs in 3-node single link topology
*** Test Cases ***
| tc01-64B-1t1c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2XC test cases with vhost and
| ... | dpdk link bonding*
| ...
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
-| | ... | trial throughput test.
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type} | ${rxq}=${None}
+| | ... | ${min_rate}=${10000}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${jumbo_frames}= | Set Variable If
| | ... | ${get_framesize + ${vlan_overhead}} < ${1522} | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Add VLAN Strip Offload switch off between DUTs in 3-node single link topology
| | And Add DPDK bonded Ethernet interfaces to DUTs in 3-node single link topology
*** Test Cases ***
| tc01-64B-1t1c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-9000B-1t1c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${9000} | search_type=NDR
| tc06-9000B-1t1c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${9000} | search_type=PDR
| tc07-IMIX-1t1c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc08-IMIX-1t1c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc09-64B-2t2c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc10-64B-2t2c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc11-1518B-2t2c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc12-1518B-2t2c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc13-9000B-2t2c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${9000} | search_type=NDR
| tc14-9000B-2t2c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${9000} | search_type=PDR
| tc15-IMIX-2t2c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc16-IMIX-2t2c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc17-64B-4t4c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc18-64B-4t4c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc19-1518B-4t4c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc20-1518B-4t4c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc21-9000B-4t4c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${9000} | search_type=NDR
| tc22-9000B-4t4c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${9000} | search_type=PDR
| tc23-IMIX-4t4c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc24-IMIX-4t4c-1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbdpdk-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases with vhost and vpp link bonding*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ${jumbo_frames}= | Set Variable If
| | ... | ${get_framesize + ${vlan_overhead}} < ${1522} | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Add VLAN Strip Offload switch off between DUTs in 3-node single link topology
| | And Run Keyword If | ${get_framesize + ${vlan_overhead}} < ${1522}
*** Test Cases ***
| tc01-64B-1t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with vhost and
| ... | vpp link bonding*
| ...
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Discover NDR or PDR for ${framesize} frames using xxx\
-| | ... | trial throughput test.
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type} | ${rxq}=${None}
+| | ... | ${min_rate}=${10000}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${jumbo_frames}= | Set Variable If
| | ... | ${get_framesize + ${vlan_overhead}} < ${1522} | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Add VLAN Strip Offload switch off between DUTs in 3-node single link topology
| | And Run Keyword If | ${get_framesize + ${vlan_overhead}} < ${1522}
*** Test Cases ***
| tc01-64B-1t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-9000B-1t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${9000} | search_type=NDR
| tc06-9000B-1t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${9000} | search_type=PDR
| tc07-IMIX-1t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc08-IMIX-1t1c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc09-64B-2t2c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc10-64B-2t2c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc11-1518B-2t2c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc12-1518B-2t2c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc13-9000B-2t2c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${9000} | search_type=NDR
| tc14-9000B-2t2c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${9000} | search_type=PDR
| tc15-IMIX-2t2c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc16-IMIX-2t2c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc17-64B-4t4c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc18-64B-4t4c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc19-1518B-4t4c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc20-1518B-4t4c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc21-9000B-4t4c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${9000} | search_type=NDR
| tc22-9000B-4t4c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${9000} | search_type=PDR
| tc23-IMIX-4t4c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc24-IMIX-4t4c-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2XC test cases with vhost and vpp link bonding*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ${jumbo_frames}= | Set Variable If
| | ... | ${get_framesize + ${vlan_overhead}} < ${1522} | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Add VLAN Strip Offload switch off between DUTs in 3-node single link topology
| | And Run Keyword If | ${get_framesize + ${vlan_overhead}} < ${1522}
*** Test Cases ***
| tc01-64B-1t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2XC test cases with vhost and
| ... | vpp link bonding*
| ...
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
-| | ... | trial throughput test.
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type} | ${rxq}=${None}
+| | ... | ${min_rate}=${10000}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${jumbo_frames}= | Set Variable If
| | ... | ${get_framesize + ${vlan_overhead}} < ${1522} | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Add VLAN Strip Offload switch off between DUTs in 3-node single link topology
| | And Run Keyword If | ${get_framesize + ${vlan_overhead}} < ${1522}
*** Test Cases ***
| tc01-64B-1t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC | TEST
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-9000B-1t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${9000} | search_type=NDR
| tc06-9000B-1t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${9000} | search_type=PDR
| tc07-IMIX-1t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc08-IMIX-1t1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc09-64B-2t2c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc10-64B-2t2c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc11-1518B-2t2c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc12-1518B-2t2c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc13-9000B-2t2c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${9000} | search_type=NDR
| tc14-9000B-2t2c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${9000} | search_type=PDR
| tc15-IMIX-2t2c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc16-IMIX-2t2c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc17-64B-4t4c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc18-64B-4t4c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc19-1518B-4t4c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc20-1518B-4t4c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc21-9000B-4t4c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps.
-| | ...
| | [Tags] | 9000B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${9000} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${9000} | search_type=NDR
| tc22-9000B-4t4c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start at 10GE\
-| | ... | linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 9000B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=${9000} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${9000} | search_type=PDR
| tc23-IMIX-4t4c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc24-IMIX-4t4c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 framesize using binary search start at\
-| | ... | 10GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for 1lbvpp-dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ${jumbo_frames}= | Set Variable If | ${get_framesize} < ${1522}
| | ... | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2XC test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for dot1q-l2xcbase-eth-2vhostvr1024-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ${jumbo_frames}= | Set Variable If | ${get_framesize} < ${1522}
| | ... | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for dot1q-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize L2 bridge domains with Vhost-User in 3-node circular topology
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ${jumbo_frames}= | Set Variable If | ${get_framesize} < ${1522}
| | ... | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr256-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ... | ${False} | ${True}
| | Set Test Variable | ${jumbo_frames}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2XC test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for eth-l2xcbase-eth-2vhostvr1024-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ${jumbo_frames}= | Set Variable If | ${get_framesize} < ${1522}
| | ... | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2xcbase-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2XC test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for eth-l2xcbase-eth-2vhostvr256-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ${jumbo_frames}= | Set Variable If | ${get_framesize} < ${1522}
| | ... | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2xcbase-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr256-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2xcbase-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr256-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2xcbase-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr256-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2xcbase-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr256-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2xcbase-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr256-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2xcbase-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr256-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2xcbase-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr256-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2xcbase-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr256-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2xcbase-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr256-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2xcbase-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr256-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2xcbase-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr256-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2xcbase-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-2vhostvr256-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2XC test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2XC switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ... | ${False} | ${True}
| | Set Test Variable | ${jumbo_frames}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile} | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Check RR for ethip4-ip4base-eth-2vhostvr1024-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ${jumbo_frames}= | Set Variable If | ${get_framesize} < ${1522}
| | ... | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-ethip4-ip4base-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-ethip4-ip4base-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-ethip4-ip4base-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-ethip4-ip4base-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-ethip4-ip4base-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-ethip4-ip4base-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-ethip4-ip4base-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-ethip4-ip4base-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-ethip4-ip4base-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-ethip4-ip4base-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-ethip4-ip4base-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Check RR for eth-ip4base-eth-2vhostvr256-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ${jumbo_frames}= | Set Variable If | ${get_framesize} < ${1522}
| | ... | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for eth-ip4base-eth-2vhostvr256-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-ethip4-ip4base-eth-2vhostvr256-1vm
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for eth-ip4base-eth-2vhostvr256-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-ethip4-ip4base-eth-2vhostvr256-1vm
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for eth-ip4base-eth-2vhostvr256-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-ethip4-ip4base-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 1 phy core,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for eth-ip4base-eth-2vhostvr256-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-ethip4-ip4base-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for eth-ip4base-eth-2vhostvr256-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-ethip4-ip4base-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for eth-ip4base-eth-2vhostvr256-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-ethip4-ip4base-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for eth-ip4base-eth-2vhostvr256-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-ethip4-ip4base-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 2 phy cores,\
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for eth-ip4base-eth-2vhostvr256-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-ethip4-ip4base-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for eth-ip4base-eth-2vhostvr256-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-ethip4-ip4base-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for eth-ip4base-eth-2vhostvr256-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-ethip4-ip4base-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for eth-ip4base-eth-2vhostvr256-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-ethip4-ip4base-eth-2vhostvr256-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IP4 routing config with 4 phy cores,\
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for eth-ip4base-eth-2vhostvr256-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results IPv4 test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Check RR for ethip4-ip4base-eth-4vhostvr1024-2vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs IPv4 routing config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
| | ... | ${False} | ${True}
| | Set Test Variable | ${jumbo_frames}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-ethip4-ip4base-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-ethip4-ip4base-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-ethip4-ip4base-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-ethip4-ip4base-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-ethip4-ip4base-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-ethip4-ip4base-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-ethip4-ip4base-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-ethip4-ip4base-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-ethip4-ip4base-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-ethip4-ip4base-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-ethip4-ip4base-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases with VXLANoIPv4
| ... | and vhost*
| ...
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit}
| | ${jumbo_frames}= | Set Variable If | ${get_framesize} < ${1522}
| | ... | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${get_framesize}
| | ${jumbo_frames}= | Set Variable If | ${get_framesize} < ${1522}
| | ... | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_24.5G} | ${get_framesize}
| | ${jumbo_frames}= | Set Variable If | ${get_framesize} < ${1522}
| | ... | ${False} | ${True}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 1
| | And Add PCI devices to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | When Initialize L2 bridge domains with Vhost-User in 3-node circular topology
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 2
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| | ${threshold}= | Set Variable | ${min_rate}
| | ${dut1_vm_refs}= | Create Dictionary
| | ${dut2_vm_refs}= | Create Dictionary
-| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | 4
| | And Add PCI devices to all DUTs
| | And Add no multi seg to all DUTs
| | And Apply startup configuration on all VPP DUTs
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *Raw results L2BD test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
+| Local template
| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for ${framesize} frames using single\
+| | ... | [Cfg] DUT runs L2BD switching config.
+| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.
+| | ... | [Ver] Measure MaxReceivedRate for ${framesize}B frames using single\
| | ... | trial throughput test.
| | ...
-| | [Arguments] | ${framesize} | ${wt} | ${rxq}
+| | ... | *Arguments:*
+| | ... | - framesize - Framesize in Bytes in integer or string (IMIX_v4_1).
+| | ... | Type: integer, string
+| | ... | - phy_cores - Number of physical cores. Type: integer
+| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer
+| | ...
+| | [Arguments] | ${framesize} | ${phy_cores} | ${rxq}=${None}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ${max_rate}= | Calculate pps | ${s_24.5G} | ${get_framesize}
| | ... | ${False} | ${True}
| | Set Test Variable | ${jumbo_frames}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${64} | wt=1 | rxq=1
+| | framesize=${64} | phy_cores=${1}
| tc02-1518B-1t1c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${1518} | wt=1 | rxq=1
+| | framesize=${1518} | phy_cores=${1}
| tc03-9000B-1t1c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${9000} | wt=1 | rxq=1
+| | framesize=${9000} | phy_cores=${1}
| tc04-IMIX-1t1c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy\
-| | ... | core, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 1C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=IMIX_v4_1 | wt=1 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${1}
| tc05-64B-2t2c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${64} | wt=2 | rxq=1
+| | framesize=${64} | phy_cores=${2}
| tc06-1518B-2t2c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${1518} | wt=2 | rxq=1
+| | framesize=${1518} | phy_cores=${2}
| tc07-9000B-2t2c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${9000} | wt=2 | rxq=1
+| | framesize=${9000} | phy_cores=${2}
| tc08-IMIX-2t2c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy\
-| | ... | cores, 1 receive queue per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 2C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=IMIX_v4_1 | wt=2 | rxq=1
+| | framesize=IMIX_v4_1 | phy_cores=${2}
| tc09-64B-4t4c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 64B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 64B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${64} | wt=4 | rxq=2
+| | framesize=${64} | phy_cores=${4}
| tc10-1518B-4t4c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 1518B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 1518B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${1518} | wt=4 | rxq=2
+| | framesize=${1518} | phy_cores=${4}
| tc11-9000B-4t4c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for 9000B frames using single\
-| | ... | trial throughput test.
-| | ...
| | [Tags] | 9000B | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=${9000} | wt=4 | rxq=2
+| | framesize=${9000} | phy_cores=${4}
| tc12-IMIX-4t4c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-mrr
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy\
-| | ... | cores, 2 receive queues per NIC port.
-| | ... | [Ver] Measure MaxReceivedRate for IMIX_v4_1 frames using single\
-| | ... | trial throughput test.
-| | ... | IMIX_v4_1 = (28x64B; 16x570B; 4x1518B)
-| | ...
| | [Tags] | IMIX | 4C
-| | ...
-| | [Template] | Check RR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | framesize=IMIX_v4_1 | wt=4 | rxq=2
+| | framesize=IMIX_v4_1 | phy_cores=${4}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Find NDR for ${framesize} frames using binary search start at
-| | ... | 40GE linerate, step 10kpps.
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type} | ${rxq}=${None}
+| | ... | ${min_rate}=${10000}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ... | ${False} | ${True}
| | Set Test Variable | ${jumbo_frames}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config 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 10kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config 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 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config 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 10kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config 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 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 40GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 40GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames \
-| | ... | using binary search start at 40GE linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames \
-| | ... | using binary search start at 40GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames \
-| | ... | using binary search start at 40GE linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames \
-| | ... | using binary search start at 40GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-IMIX-2t2c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 40GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc12-IMIX-2t2c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 40GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc13-64B-4t4c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames \
-| | ... | using binary search start at 40GE linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames \
-| | ... | using binary search start at 40GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames \
-| | ... | using binary search start at 40GE linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames \
-| | ... | using binary search start at 40GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-IMIX-4t4c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 40GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc18-IMIX-4t4c-eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2BD switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 40GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2bdbasemaclrn-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2XC test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254
*** Keywords ***
-| Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Find NDR for ${framesize} frames using binary search start at
-| | ... | 40GE linerate, step 10kpps.
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type} | ${rxq}=${None}
+| | ... | ${min_rate}=${10000}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ... | ${False} | ${True}
| | Set Test Variable | ${jumbo_frames}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config 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 10kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-eth-l2xcbase-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config 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 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config 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 10kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-eth-l2xcbase-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config 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 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 40GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-eth-l2xcbase-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 40GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames \
-| | ... | using binary search start at 40GE linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-eth-l2xcbase-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames \
-| | ... | using binary search start at 40GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames \
-| | ... | using binary search start at 40GE linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-eth-l2xcbase-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames \
-| | ... | using binary search start at 40GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-IMIX-2t2c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 40GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc12-IMIX-2t2c-eth-l2xcbase-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 40GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc13-64B-4t4c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames \
-| | ... | using binary search start at 40GE linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-eth-l2xcbase-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames \
-| | ... | using binary search start at 40GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames \
-| | ... | using binary search start at 40GE linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-eth-l2xcbase-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames \
-| | ... | using binary search start at 40GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-IMIX-4t4c-eth-l2xcbase-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 40GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc18-IMIX-4t4c-eth-l2xcbase-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs L2XC switching config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 40GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for eth-l2xcbase-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ... | dut2_node=${dut2} | dut2_vm_refs=${dut2_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput IP14 test cases with vhost*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src253
*** Keywords ***
-| Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with ${wt} thread, ${wt} phy\
-| | ... | core, ${rxq} receive queue per NIC port.
-| | ... | [Ver] Find NDR for ${framesize} frames using binary search start at
-| | ... | 40GE linerate, step 10kpps.
-| | ...
-| | [Arguments] | ${wt} | ${rxq} | ${framesize} | ${min_rate} | ${search_type}
+| Local template
+| | [Arguments] | ${phy_cores} | ${framesize} | ${search_type} | ${rxq}=${None}
+| | ... | ${min_rate}=${10000}
| | ...
-| | # Test Variables required for test and test teardown
| | Set Test Variable | ${framesize}
| | Set Test Variable | ${min_rate}
| | ${get_framesize}= | Get Frame Size | ${framesize}
| | ... | ${False} | ${True}
| | Set Test Variable | ${jumbo_frames}
| | ...
-| | Given Add '${wt}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | And Add PCI devices to all DUTs
| | And Run Keyword If | ${get_framesize} < ${1522}
| | ... | Add no multi seg to all DUTs
*** Test Cases ***
| tc01-64B-1t1c-ethip4-ip4base-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config 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 10kpps.
-| | ...
| | [Tags] | 64B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${64} | search_type=NDR
| tc02-64B-1t1c-ethip4-ip4base-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config 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 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${64} | search_type=PDR
| tc03-1518B-1t1c-ethip4-ip4base-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config 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 10kpps.
-| | ...
| | [Tags] | 1518B | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=${1518} | search_type=NDR
| tc04-1518B-1t1c-ethip4-ip4base-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config 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 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=${1518} | search_type=PDR
| tc05-IMIX-1t1c-ethip4-ip4base-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 40GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=NDR
| tc06-IMIX-1t1c-ethip4-ip4base-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 1 phy core, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 40GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 1C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=1 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${1} | framesize=IMIX_v4_1 | search_type=PDR
| tc07-64B-2t2c-ethip4-ip4base-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames \
-| | ... | using binary search start at 40GE linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${64} | search_type=NDR
| tc08-64B-2t2c-ethip4-ip4base-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames \
-| | ... | using binary search start at 40GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${64} | search_type=PDR
| tc09-1518B-2t2c-ethip4-ip4base-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames \
-| | ... | using binary search start at 40GE linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=${1518} | search_type=NDR
| tc10-1518B-2t2c-ethip4-ip4base-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames \
-| | ... | using binary search start at 40GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=${1518} | search_type=PDR
| tc11-IMIX-2t2c-ethip4-ip4base-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 40GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=NDR
| tc12-IMIX-2t2c-ethip4-ip4base-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 2 phy cores, \
-| | ... | 1 receive queue per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 40GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 2C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=2 | rxq=1 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${2} | framesize=IMIX_v4_1 | search_type=PDR
| tc13-64B-4t4c-ethip4-ip4base-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 64 Byte frames \
-| | ... | using binary search start at 40GE linerate, step 10kpps.
-| | ...
| | [Tags] | 64B | 4C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${64} | search_type=NDR
| tc14-64B-4t4c-ethip4-ip4base-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 64 Byte frames \
-| | ... | using binary search start at 40GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 64B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=${64} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${64} | search_type=PDR
| tc15-1518B-4t4c-ethip4-ip4base-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for 1518 Byte frames \
-| | ... | using binary search start at 40GE linerate, step 10kpps.
-| | ...
| | [Tags] | 1518B | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=${1518} | search_type=NDR
| tc16-1518B-4t4c-ethip4-ip4base-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for 1518 Byte frames \
-| | ... | using binary search start at 40GE linerate, step 10kpps, LT=0.5%.
-| | ...
| | [Tags] | 1518B | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=${1518} | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=${1518} | search_type=PDR
| tc17-IMIX-4t4c-ethip4-ip4base-eth-4vhostvr1024-2vm-ndrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find NDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 40GE linerate, step 10kpps.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | NDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=NDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=NDR
| tc18-IMIX-4t4c-ethip4-ip4base-eth-4vhostvr1024-2vm-pdrdisc
-| | [Documentation]
-| | ... | [Cfg] DUT runs IPv4 routing config with 4 phy cores, \
-| | ... | 2 receive queues per NIC port.
-| | ... | [Ver] Find PDR for IMIX_v4_1 frame \
-| | ... | size using binary search start at 40GE linerate, step 10kpps, LT=0.5%.
-| | ... | IMIX_v4_1 = (28x64B;16x570B;4x1518B)
-| | ...
| | [Tags] | IMIX | 4C | PDRDISC | SKIP_PATCH
-| | ...
-| | [Template] | Discover NDR or PDR for ethip4-ip4base-eth-4vhostvr1024-2vm
-| | wt=4 | rxq=2 | framesize=IMIX_v4_1 | min_rate=${10000} | search_type=PDR
+| | phy_cores=${4} | framesize=IMIX_v4_1 | search_type=PDR
| ... | ${min_rate}pps | ${framesize} | ${traffic_profile}
| ... | dut1_node=${dut1} | dut1_vm_refs=${dut1_vm_refs}
| ...
+| Test Template | Local template
+| ...
| Documentation | *RFC2544: Packet throughput L2BD test cases with VXLANoIPv4
| ... | and vhost*
| ...
*** Keywords ***
-| Discover NDR or PDR for IPv4 forwarding with VHOST/VXLAN and ACL
-| | [Arguments] | ${num_of_threads} | ${rxq} | ${pkt_framesize} | ${search_type}
-| | ... | ${acl_type}=${EMPTY}
+| Local template
| | [Documentation]
| | ... | [Cfg] DUT runs L2BD switching config with 1 phy core,\
| | ... | 1 receive queue per NIC port.
| | ... | linerate, step 10kpps.
| | ...
| | ... | *Arguments:*
-| | ... | - num_of_threads - Number of worker threads to be used. Type: integer
+| | ... | - phy_cores - Number of worker threads to be used. Type: integer
| | ... | - rxq - Number of Rx queues to be used. Type: integer
| | ... | - pkt_framesize - L2 Frame Size [B]. Type: integer
| | ... | - search_type - Type of the search - non drop rate (NDR) or partial
| | ... | drop rare (PDR). Type: string
| | ...
+| | [Arguments] | ${phy_cores} | ${pkt_framesize} | ${search_type}
+| | ... | ${acl_type}=${EMPTY} | ${rxq}=${None}
+| | ...
| | ${binary_min}= | Set Variable | ${min_rate}
| | ${threshold}= | Set Variable | ${min_rate}
| | ${max_pkt_size}= | Set Variable If | '${pkt_framesize}' == 'IMIX_v4_1' |
| | ... | ${1500 + ${vxlan_overhead}} | ${pkt_framesize + ${vxlan_overhead}}
| | ${max_rate}= | Calculate pps | ${s_limit} | ${max_pkt_size}
| | ${binary_max}= | Set Variable | ${max_rate}
-| | Given Add '${num_of_threads}' worker threads and '${rxq}' rxqueues in 3-node single-link circular topology
+| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq}
| | Add PCI devices to all DUTs
| | And Run Keyword If | ${max_pkt_size} < ${1522}
| | ... | Add no multi seg to all DUTs
| | ... | ${perf_pdr_loss_acceptance} | ${perf_pdr_loss_acceptance_type}
*** Test Cases ***
-| tc01-64B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
+| tc01-64B-2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
| | [Tags] | 64B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VHOST/VXLAN and ACL
-| | num_of_threads=2 | rxq=2 | pkt_framesize=${64} | search_type=NDR
+| | ${phy_cores}=${2} | pkt_framesize=${64} | search_type=NDR
-| tc02-64B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
+| tc02-64B-2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
| | [Tags] | 64B | 2C | PDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VHOST/VXLAN and ACL
-| | num_of_threads=2 | rxq=2 | pkt_framesize=${64} | search_type=PDR
+| | ${phy_cores}=${2} | pkt_framesize=${64} | search_type=PDR
-| tc03-150B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
+| tc03-150B-2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
| | [Tags] | 150B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VHOST/VXLAN and ACL
-| | num_of_threads=2 | rxq=2 | pkt_framesize=${150} | search_type=NDR
+| | ${phy_cores}=${2} | pkt_framesize=${150} | search_type=NDR
-| tc04-150B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
+| tc04-150B-2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
| | [Tags] | 150B | 2C | PDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VHOST/VXLAN and ACL
-| | num_of_threads=2 | rxq=2 | pkt_framesize=${150} | search_type=PDR
+| | ${phy_cores}=${2} | pkt_framesize=${150} | search_type=PDR
-| tc05-200B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
+| tc05-200B-2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
| | [Tags] | 200B | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VHOST/VXLAN and ACL
-| | num_of_threads=2 | rxq=2 | pkt_framesize=${200} | search_type=NDR
+| | ${phy_cores}=${2} | pkt_framesize=${200} | search_type=NDR
-| tc06-200B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
+| tc06-200B-2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
| | [Tags] | 200B | 2C | PDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VHOST/VXLAN and ACL
-| | num_of_threads=2 | rxq=2 | pkt_framesize=${200} | search_type=PDR
+| | ${phy_cores}=${2} | pkt_framesize=${200} | search_type=PDR
-| tc07-IMIX-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
+| tc07-IMIX-2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
| | [Tags] | IMIX | 2C | NDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VHOST/VXLAN and ACL
-| | num_of_threads=2 | rxq=2 | pkt_framesize=IMIX_v4_1 | search_type=NDR
+| | ${phy_cores}=${2} | pkt_framesize=IMIX_v4_1 | search_type=NDR
-| tc08-IMIX-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
+| tc08-IMIX-2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
| | [Tags] | IMIX | 2C | PDRDISC
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VHOST/VXLAN and ACL
-| | num_of_threads=2 | rxq=2 | pkt_framesize=IMIX_v4_1 | search_type=PDR
+| | ${phy_cores}=${2} | pkt_framesize=IMIX_v4_1 | search_type=PDR
-| tc09-64B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-acl-ndrdisc
+| tc09-64B-2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-acl-ndrdisc
| | [Tags] | 64B | 2C | NDRDISC | ACL_PERMIT
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VHOST/VXLAN and ACL
-| | num_of_threads=2 | rxq=2 | pkt_framesize=${64} | search_type=NDR
+| | ${phy_cores}=${2} | pkt_framesize=${64} | search_type=NDR
| | ... | acl_type=permit
-| tc10-64B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-acl-pdrdisc
+| tc10-64B-2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-acl-pdrdisc
| | [Tags] | 64B | 2C | PDRDISC | ACL_PERMIT
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VHOST/VXLAN and ACL
-| | num_of_threads=2 | rxq=2 | pkt_framesize=${64} | search_type=PDR
+| | ${phy_cores}=${2} | pkt_framesize=${64} | search_type=PDR
| | ... | acl_type=permit
-| tc11-150B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-acl-ndrdisc
+| tc11-150B-2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-acl-ndrdisc
| | [Tags] | 150B | 2C | NDRDISC | ACL_PERMIT
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VHOST/VXLAN and ACL
-| | num_of_threads=2 | rxq=2 | pkt_framesize=${150} | search_type=NDR
+| | ${phy_cores}=${2} | pkt_framesize=${150} | search_type=NDR
| | ... | acl_type=permit
-| tc12-150B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-acl-pdrdisc
+| tc12-150B-2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-acl-pdrdisc
| | [Tags] | 150B | 2C | PDRDISC | ACL_PERMIT
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VHOST/VXLAN and ACL
-| | num_of_threads=2 | rxq=2 | pkt_framesize=${150} | search_type=PDR
+| | ${phy_cores}=${2} | pkt_framesize=${150} | search_type=PDR
| | ... | acl_type=permit
-| tc13-200B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-acl-ndrdisc
+| tc13-200B-2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-acl-ndrdisc
| | [Tags] | 200B | 2C | NDRDISC | ACL_PERMIT
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VHOST/VXLAN and ACL
-| | num_of_threads=2 | rxq=2 | pkt_framesize=${200} | search_type=NDR
+| | ${phy_cores}=${2} | pkt_framesize=${200} | search_type=NDR
| | ... | acl_type=permit
-| tc14-200B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-acl-pdrdisc
+| tc14-200B-2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-acl-pdrdisc
| | [Tags] | 200B | 2C | PDRDISC | ACL_PERMIT
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VHOST/VXLAN and ACL
-| | num_of_threads=2 | rxq=2 | pkt_framesize=${200} | search_type=PDR
+| | ${phy_cores}=${2} | pkt_framesize=${200} | search_type=PDR
| | ... | acl_type=permit
-| tc15-IMIX-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-acl-ndrdisc
+| tc15-IMIX-2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-acl-ndrdisc
| | [Tags] | IMIX | 2C | NDRDISC | ACL_PERMIT
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VHOST/VXLAN and ACL
-| | num_of_threads=2 | rxq=2 | pkt_framesize=IMIX_v4_1 | search_type=NDR
+| | ${phy_cores}=${2} | pkt_framesize=IMIX_v4_1 | search_type=NDR
| | ... | acl_type=permit
-| tc16-IMIX-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-acl-pdrdisc
+| tc16-IMIX-2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-acl-pdrdisc
| | [Tags] | IMIX | 2C | PDRDISC | ACL_PERMIT
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VHOST/VXLAN and ACL
-| | num_of_threads=2 | rxq=2 | pkt_framesize=IMIX_v4_1 | search_type=PDR
+| | ${phy_cores}=${2} | pkt_framesize=IMIX_v4_1 | search_type=PDR
| | ... | acl_type=permit
-| tc17-64B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-aclreflect-ndrdisc
+| tc17-64B-2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-aclreflect-ndrdisc
| | [Tags] | 64B | 2C | NDRDISC | ACL_PERMIT_REFLECT
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VHOST/VXLAN and ACL
-| | num_of_threads=2 | rxq=2 | pkt_framesize=${64} | search_type=NDR
+| | ${phy_cores}=${2} | pkt_framesize=${64} | search_type=NDR
| | ... | acl_type=permit+reflect
-| tc18-64B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-aclreflect-pdrdisc
+| tc18-64B-2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-aclreflect-pdrdisc
| | [Tags] | 64B | 2C | PDRDISC | ACL_PERMIT_REFLECT
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VHOST/VXLAN and ACL
-| | num_of_threads=2 | rxq=2 | pkt_framesize=${64} | search_type=PDR
+| | ${phy_cores}=${2} | pkt_framesize=${64} | search_type=PDR
| | ... | acl_type=permit+reflect
-| tc19-150B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-aclreflect-ndrdisc
+| tc19-150B-2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-aclreflect-ndrdisc
| | [Tags] | 150B | 2C | NDRDISC | ACL_PERMIT_REFLECT
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VHOST/VXLAN and ACL
-| | num_of_threads=2 | rxq=2 | pkt_framesize=${150} | search_type=NDR
+| | ${phy_cores}=${2} | pkt_framesize=${150} | search_type=NDR
| | ... | acl_type=permit+reflect
-| tc20-150B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-aclreflect-pdrdisc
+| tc20-150B-2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-aclreflect-pdrdisc
| | [Tags] | 150B | 2C | PDRDISC | ACL_PERMIT_REFLECT
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VHOST/VXLAN and ACL
-| | num_of_threads=2 | rxq=2 | pkt_framesize=${150} | search_type=PDR
+| | ${phy_cores}=${2} | pkt_framesize=${150} | search_type=PDR
| | ... | acl_type=permit+reflect
-| tc21-200B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-aclreflect-ndrdisc
+| tc21-200B-2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-aclreflect-ndrdisc
| | [Tags] | 200B | 2C | NDRDISC | ACL_PERMIT_REFLECT
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VHOST/VXLAN and ACL
-| | num_of_threads=2 | rxq=2 | pkt_framesize=${200} | search_type=NDR
+| | ${phy_cores}=${2} | pkt_framesize=${200} | search_type=NDR
| | ... | acl_type=permit+reflect
-| tc22-200B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-aclreflect-pdrdisc
+| tc22-200B-2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-aclreflect-pdrdisc
| | [Tags] | 200B | 2C | PDRDISC | ACL_PERMIT_REFLECT
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VHOST/VXLAN and ACL
-| | num_of_threads=2 | rxq=2 | pkt_framesize=${200} | search_type=PDR
+| | ${phy_cores}=${2} | pkt_framesize=${200} | search_type=PDR
| | ... | acl_type=permit+reflect
-| tc23-IMIX-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-aclreflect-ndrdisc
+| tc23-IMIX-2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-aclreflect-ndrdisc
| | [Tags] | IMIX | 2C | NDRDISC | ACL_PERMIT_REFLECT
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VHOST/VXLAN and ACL
-| | num_of_threads=2 | rxq=2 | pkt_framesize=IMIX_v4_1 | search_type=NDR
+| | ${phy_cores}=${2} | pkt_framesize=IMIX_v4_1 | search_type=NDR
| | ... | acl_type=permit+reflect
-| tc24-IMIX-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-aclreflect-pdrdisc
+| tc24-IMIX-2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-aclreflect-pdrdisc
| | [Tags] | IMIX | 2C | PDRDISC | ACL_PERMIT_REFLECT
-| | ...
-| | [Template] | Discover NDR or PDR for IPv4 forwarding with VHOST/VXLAN and ACL
-| | num_of_threads=2 | rxq=2 | pkt_framesize=IMIX_v4_1 | search_type=PDR
+| | ${phy_cores}=${2} | pkt_framesize=IMIX_v4_1 | search_type=PDR
| | ... | acl_type=permit+reflect