-# Copyright (c) 2016 Cisco and/or its affiliates.
+# Copyright (c) 2017 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
*** Settings ***
| Resource | resources/libraries/robot/performance.robot
| Library | resources.libraries.python.Policer
-| Library | resources.libraries.python.IPv4Setup.Dut | ${nodes['DUT1']} | WITH NAME | dut1_v4
-| Library | resources.libraries.python.IPv4Setup.Dut | ${nodes['DUT2']} | WITH NAME | dut2_v4
-| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | PERFTEST_SHORT
-| ... | NIC_Intel-X520-DA2
-| Suite Setup | 3-node Performance Suite Setup with DUT's NIC model
+| Library | resources.libraries.python.IPv4Setup.Dut | ${nodes['DUT1']}
+| ... | WITH NAME | dut1_v4
+| Library | resources.libraries.python.IPv4Setup.Dut | ${nodes['DUT2']}
+| ... | WITH NAME | dut2_v4
+| ...
+| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRCHK
+| ... | NIC_Intel-X520-DA2 | IP4FWD | BASE | DOT1Q
+| ...
+| Suite Setup | Set up 3-node performance topology with DUT's NIC model
| ... | L3 | Intel-X520-DA2
-| Suite Teardown | 3-node Performance Suite Teardown
-| Test Setup | Setup all DUTs before test
-| Test Teardown | Run Keywords | Remove startup configuration of VPP from all DUTs
-| ... | AND | Show vpp trace dump on all DUTs
+| Suite Teardown | Tear down 3-node performance topology
+| ...
+| Test Setup | Set up performance test
+| Test Teardown | Tear down performance ndrchk test
+| ...
| Documentation | *Reference NDR throughput IPv4 policer verify test cases*
| ...
| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
*** Variables ***
| ${cir}= | ${100}
| ${eir}= | ${150}
+# Traffic profile:
+| ${traffic_profile} | trex-sl-3n-ethip4-ip4src253
*** Test Cases ***
-| TC01: Verify 64B ref-NDR at 2x 3.1Mpps - DUT IPv4 2r3c-ca policer - 1thread 1core 1rxq
+| tc01-64B-1t1c-ethip4-ip4base-ipolicemarkbase-ndrchk
| | [Documentation]
| | ... | [Cfg] DUT runs IPv4 routing and policer config with 1 thread, 1 phy \
| | ... | core, 1 receive queue per NIC port. [Ver] Verify ref-NDR for 64 \
-| | ... | Byte frames using single trial throughput test.
-| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | NDR
-| | ${framesize}= | Set Variable | 64
-| | ${duration}= | Set Variable | 10
-| | ${rate}= | Set Variable | 3.1mpps
+| | ... | Byte frames using single trial throughput test at 2x 3.6mpps.
+| | [Tags] | 64B | 1T1C | STHREAD
+| | ${framesize}= | Set Variable | ${64}
+| | ${rate}= | Set Variable | 3.6mpps
| | Set Test Variable | ${cb} | ${framesize}
| | Set Test Variable | ${eb} | ${framesize}
-| | Given Add '1' worker threads and rxqueues '1' in 3-node single-link topo
-| | And Add PCI devices to DUTs from 3-node single link topology
-| | And Add No Multi Seg to all DUTs
-| | And Apply startup configuration on all VPP DUTs
-| | And IPv4 forwarding initialized in a 3-node circular topology
-| | And IPv4 policer 2r3c-'ca' initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-IPv4
+| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | And Add PCI devices to DUTs in 3-node single link topology
+| | And Add no multi seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And Initialize IPv4 forwarding in 3-node circular topology
+| | And Initialize IPv4 policer 2r3c-'ca' in 3-node circular topology
+| | Then Traffic should pass with no loss | ${perf_trial_duration} | ${rate}
+| | ... | ${framesize} | ${traffic_profile}
-| TC02: Verify 1518B ref-NDR at 2x 812.74kpps - DUT IPv4 2r3c-ca policer - 1thread 1core 1rxq
+| tc02-1518B-1t1c-ethip4-ip4base-ipolicemarkbase-ndrchk
| | [Documentation]
| | ... | [Cfg] DUT runs IPv4 routing and policer config with 1 thread, 1 phy \
| | ... | core, 1 receive queue per NIC port. [Ver] Verify ref-NDR for 1518 \
-| | ... | Byte frames using single trial throughput test.
-| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | NDR
-| | ${framesize}= | Set Variable | 1518
-| | ${duration}= | Set Variable | 10
+| | ... | Byte frames using single trial throughput test at 2x 812743pps.
+| | [Tags] | 1518B | 1T1C | STHREAD
+| | ${framesize}= | Set Variable | ${1518}
| | ${rate}= | Set Variable | 812743pps
| | Set Test Variable | ${cb} | ${framesize}
| | Set Test Variable | ${eb} | ${framesize}
-| | Given Add '1' worker threads and rxqueues '1' in 3-node single-link topo
-| | And Add PCI devices to DUTs from 3-node single link topology
-| | And Add No Multi Seg to all DUTs
-| | And Apply startup configuration on all VPP DUTs
-| | When IPv4 forwarding initialized in a 3-node circular topology
-| | And IPv4 policer 2r3c-'ca' initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-IPv4
+| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | And Add PCI devices to DUTs in 3-node single link topology
+| | And Add no multi seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | When Initialize IPv4 forwarding in 3-node circular topology
+| | And Initialize IPv4 policer 2r3c-'ca' in 3-node circular topology
+| | Then Traffic should pass with no loss | ${perf_trial_duration} | ${rate}
+| | ... | ${framesize} | ${traffic_profile}
-| TC03: Verify 9000B ref-NDR at 2x 138.58kpps - DUT IPv4 2r3c-ca policer - 1thread 1core 1rxq
+| tc03-9000B-1t1c-ethip4-ip4base-ipolicemarkbase-ndrchk
| | [Documentation]
| | ... | [Cfg] DUT runs IPv4 routing and policer config with 1 thread, 1 phy \
| | ... | core, 1 receive queue per NIC port. [Ver] Verify ref-NDR for 9000 \
-| | ... | Byte frames using single trial throughput test.
-| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | NDR
-| | ${framesize}= | Set Variable | 9000
-| | ${duration}= | Set Variable | 10
+| | ... | Byte frames using single trial throughput test at 2x 138580pps.
+| | [Tags] | 9000B | 1T1C | STHREAD
+| | ${framesize}= | Set Variable | ${9000}
| | ${rate}= | Set Variable | 138580pps
| | Set Test Variable | ${cb} | ${framesize}
| | Set Test Variable | ${eb} | ${framesize}
-| | Given Add '1' worker threads and rxqueues '1' in 3-node single-link topo
-| | And Add PCI devices to DUTs from 3-node single link topology
-| | And Apply startup configuration on all VPP DUTs
-| | And IPv4 forwarding initialized in a 3-node circular topology
-| | And IPv4 policer 2r3c-'ca' initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-IPv4
+| | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | And Add PCI devices to DUTs in 3-node single link topology
+| | And Apply startup configuration on all VPP DUTs
+| | And Initialize IPv4 forwarding in 3-node circular topology
+| | And Initialize IPv4 policer 2r3c-'ca' in 3-node circular topology
+| | Then Traffic should pass with no loss | ${perf_trial_duration} | ${rate}
+| | ... | ${framesize} | ${traffic_profile}
-| TC04: Verify 64B ref-NDR at 2x 5.6Mpps - DUT IPv4 2r3c-ca policer - 2thread 2core 1rxq
+| tc04-64B-2t2c-ethip4-ip4base-ipolicemarkbase-ndrchk
| | [Documentation]
| | ... | [Cfg] DUT runs IPv4 routing and policer config with 2 threads, 2 \
| | ... | phy cores, 1 receive queue per NIC port. [Ver] Verify ref-NDR for \
-| | ... | 64 Byte frames using single trial throughput test.
-| | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | NDR
-| | ${framesize}= | Set Variable | 64
-| | ${duration}= | Set Variable | 10
-| | ${rate}= | Set Variable | 5.6mpps
+| | ... | 64 Byte frames using single trial throughput test at 2x 6.2mpps.
+| | [Tags] | 64B | 2T2C | MTHREAD
+| | ${framesize}= | Set Variable | ${64}
+| | ${rate}= | Set Variable | 6.2mpps
| | Set Test Variable | ${cb} | ${framesize}
| | Set Test Variable | ${eb} | ${framesize}
-| | Given Add '2' worker threads and rxqueues '1' in 3-node single-link topo
-| | And Add PCI devices to DUTs from 3-node single link topology
-| | And Add No Multi Seg to all DUTs
-| | And Apply startup configuration on all VPP DUTs
-| | And IPv4 forwarding initialized in a 3-node circular topology
-| | And IPv4 policer 2r3c-'ca' initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-IPv4
+| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | And Add PCI devices to DUTs in 3-node single link topology
+| | And Add no multi seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And Initialize IPv4 forwarding in 3-node circular topology
+| | And Initialize IPv4 policer 2r3c-'ca' in 3-node circular topology
+| | Then Traffic should pass with no loss | ${perf_trial_duration} | ${rate}
+| | ... | ${framesize} | ${traffic_profile}
-| TC05: Verify 1518B ref-NDR at 2x 812.74kpps - DUT IPv4 2r3c-ca policer - 2thread 2core 1rxq
+| tc05-1518B-2t2c-ethip4-ip4base-ipolicemarkbase-ndrchk
| | [Documentation]
| | ... | [Cfg] DUT runs IPv4 routing and policer config with 2 threads, 2 \
| | ... | phy cores, 1 receive queue per NIC port. [Ver] Verify ref-NDR for \
-| | ... | 1518 Byte frames using single trial throughput test.
-| | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | NDR
-| | ${framesize}= | Set Variable | 1518
-| | ${duration}= | Set Variable | 10
+| | ... | 1518 Byte frames using single trial throughput test at 2x 812743pps.
+| | [Tags] | 1518B | 2T2C | MTHREAD
+| | ${framesize}= | Set Variable | ${1518}
| | ${rate}= | Set Variable | 812743pps
| | Set Test Variable | ${cb} | ${framesize}
| | Set Test Variable | ${eb} | ${framesize}
-| | Given Add '2' worker threads and rxqueues '1' in 3-node single-link topo
-| | And Add PCI devices to DUTs from 3-node single link topology
-| | And Add No Multi Seg to all DUTs
-| | And Apply startup configuration on all VPP DUTs
-| | And IPv4 forwarding initialized in a 3-node circular topology
-| | And IPv4 policer 2r3c-'ca' initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-IPv4
+| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | And Add PCI devices to DUTs in 3-node single link topology
+| | And Add no multi seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And Initialize IPv4 forwarding in 3-node circular topology
+| | And Initialize IPv4 policer 2r3c-'ca' in 3-node circular topology
+| | Then Traffic should pass with no loss | ${perf_trial_duration} | ${rate}
+| | ... | ${framesize} | ${traffic_profile}
-| TC06: Verify 9000B ref-NDR at 2x 138.58kpps - DUT IPv4 2r3c-ca policer - 2thread 2core 1rxq
+| tc06-9000B-2t2c-ethip4-ip4base-ipolicemarkbase-ndrchk
| | [Documentation]
| | ... | [Cfg] DUT runs IPv4 routing and policer config with 2 threads, 2 \
| | ... | phy cores, 1 receive queue per NIC port. [Ver] Verify ref-NDR for \
-| | ... | 9000 Byte frames using single trial throughput test.
-| | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | NDR
-| | ${framesize}= | Set Variable | 9000
-| | ${duration}= | Set Variable | 10
+| | ... | 9000 Byte frames using single trial throughput test at 2x 138580pps.
+| | [Tags] | 9000B | 2T2C | MTHREAD
+| | ${framesize}= | Set Variable | ${9000}
| | ${rate}= | Set Variable | 138580pps
| | Set Test Variable | ${cb} | ${framesize}
| | Set Test Variable | ${eb} | ${framesize}
-| | Given Add '2' worker threads and rxqueues '1' in 3-node single-link topo
-| | And Add PCI devices to DUTs from 3-node single link topology
-| | And Apply startup configuration on all VPP DUTs
-| | And IPv4 forwarding initialized in a 3-node circular topology
-| | And IPv4 policer 2r3c-'ca' initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-IPv4
+| | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
+| | And Add PCI devices to DUTs in 3-node single link topology
+| | And Apply startup configuration on all VPP DUTs
+| | And Initialize IPv4 forwarding in 3-node circular topology
+| | And Initialize IPv4 policer 2r3c-'ca' in 3-node circular topology
+| | Then Traffic should pass with no loss | ${perf_trial_duration} | ${rate}
+| | ... | ${framesize} | ${traffic_profile}
-| TC07: Verify 64B ref-NDR at 2x 8.9Mpps - DUT IPv4 2r3c-ca policer - 4threads 4cores 2rxq
+| tc07-64B-4t4c-ethip4-ip4base-ipolicemarkbase-ndrchk
| | [Documentation]
| | ... | [Cfg] DUT runs IPv4 routing and policer config with 4 thread, 4 \
| | ... | phy core, 2 receive queue per NIC port. [Ver] Verify ref-NDR for 64 \
-| | ... | Byte frames using single trial throughput test.
-| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | NDR
-| | ${framesize}= | Set Variable | 64
-| | ${duration}= | Set Variable | 10
-| | ${rate}= | Set Variable | 8.9mpps
+| | ... | Byte frames using single trial throughput test at 2x 10.4mpps.
+| | [Tags] | 64B | 4T4C | MTHREAD
+| | ${framesize}= | Set Variable | ${64}
+| | ${rate}= | Set Variable | 10.4mpps
| | Set Test Variable | ${cb} | ${framesize}
| | Set Test Variable | ${eb} | ${framesize}
-| | Given Add '4' worker threads and rxqueues '2' in 3-node single-link topo
-| | And Add PCI devices to DUTs from 3-node single link topology
-| | And Add No Multi Seg to all DUTs
-| | And Apply startup configuration on all VPP DUTs
-| | And IPv4 forwarding initialized in a 3-node circular topology
-| | And IPv4 policer 2r3c-'ca' initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-IPv4
+| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | And Add PCI devices to DUTs in 3-node single link topology
+| | And Add no multi seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And Initialize IPv4 forwarding in 3-node circular topology
+| | And Initialize IPv4 policer 2r3c-'ca' in 3-node circular topology
+| | Then Traffic should pass with no loss | ${perf_trial_duration} | ${rate}
+| | ... | ${framesize} | ${traffic_profile}
-| TC08: Verify 1518B ref-NDR at 2x 812.74kpps - DUT IPv4 2r3c-ca policer - 4threads 4cores 2rxq
+| tc08-1518B-4t4c-ethip4-ip4base-ipolicemarkbase-ndrchk
| | [Documentation]
| | ... | [Cfg] DUT runs IPv4 routing and policer config with 4 thread, 4 \
| | ... | phy core, 2 receive queue per NIC port. [Ver] Verify ref-NDR for \
-| | ... | 1518 Byte frames using single trial throughput test.
-| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | NDR
-| | ${framesize}= | Set Variable | 1518
-| | ${duration}= | Set Variable | 10
+| | ... | 1518 Byte frames using single trial throughput test at 2x 812743pps.
+| | [Tags] | 1518B | 4T4C | MTHREAD
+| | ${framesize}= | Set Variable | ${1518}
| | ${rate}= | Set Variable | 812743pps
| | Set Test Variable | ${cb} | ${framesize}
| | Set Test Variable | ${eb} | ${framesize}
-| | Given Add '4' worker threads and rxqueues '2' in 3-node single-link topo
-| | And Add PCI devices to DUTs from 3-node single link topology
-| | And Add No Multi Seg to all DUTs
-| | And Apply startup configuration on all VPP DUTs
-| | And IPv4 forwarding initialized in a 3-node circular topology
-| | And IPv4 policer 2r3c-'ca' initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-IPv4
+| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | And Add PCI devices to DUTs in 3-node single link topology
+| | And Add no multi seg to all DUTs
+| | And Apply startup configuration on all VPP DUTs
+| | And Initialize IPv4 forwarding in 3-node circular topology
+| | And Initialize IPv4 policer 2r3c-'ca' in 3-node circular topology
+| | Then Traffic should pass with no loss | ${perf_trial_duration} | ${rate}
+| | ... | ${framesize} | ${traffic_profile}
-| TC09: Verify 9000B ref-NDR at 2x 138.58kpps - DUT IPv4 2r3c-ca policer - 4threads 4cores 2rxq
+| tc09-9000B-4t4c-ethip4-ip4base-ipolicemarkbase-ndrchk
| | [Documentation]
| | ... | [Cfg] DUT runs IPv4 routing and policer config with 4 thread, 4 \
| | ... | phy core, 2 receive queue per NIC port. [Ver] Verify ref-NDR for \
-| | ... | 9000 Byte frames using single trial throughput test.
-| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | NDR
-| | ${framesize}= | Set Variable | 9000
-| | ${duration}= | Set Variable | 10
+| | ... | 9000 Byte frames using single trial throughput test at 2x 138580pps.
+| | [Tags] | 9000B | 4T4C | MTHREAD
+| | ${framesize}= | Set Variable | ${9000}
| | ${rate}= | Set Variable | 138580pps
| | Set Test Variable | ${cb} | ${framesize}
| | Set Test Variable | ${eb} | ${framesize}
-| | Given Add '4' worker threads and rxqueues '2' in 3-node single-link topo
-| | And Add PCI devices to DUTs from 3-node single link topology
-| | And Apply startup configuration on all VPP DUTs
-| | And IPv4 forwarding initialized in a 3-node circular topology
-| | And IPv4 policer 2r3c-'ca' initialized in a 3-node circular topology
-| | Then Traffic should pass with no loss | ${duration} | ${rate}
-| | ... | ${framesize} | 3-node-IPv4
+| | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
+| | And Add PCI devices to DUTs in 3-node single link topology
+| | And Apply startup configuration on all VPP DUTs
+| | And Initialize IPv4 forwarding in 3-node circular topology
+| | And Initialize IPv4 policer 2r3c-'ca' in 3-node circular topology
+| | Then Traffic should pass with no loss | ${perf_trial_duration} | ${rate}
+| | ... | ${framesize} | ${traffic_profile}