-# 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
+| 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
+| ... | NIC_Intel-X520-DA2 | IP4FWD | BASE | DOT1Q
+| ...
| Suite Setup | 3-node Performance Suite Setup 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
+| ...
+| Test Setup | Performance test setup
+| Test Teardown | Performance ndrchk test teardown
+| ...
| 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-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 at 2x 3.1mpps.
-| | [Tags] | 1T1C | STHREAD
-| | ${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
+| | 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 | ${perf_trial_duration} | ${rate}
+| | ... | ${framesize} | ${traffic_profile}
| 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 at 2x 812743pps.
-| | [Tags] | 1T1C | STHREAD
-| | ${framesize}= | Set Variable | 1518
-| | ${duration}= | Set Variable | 10
+| | [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
+| | 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 | ${perf_trial_duration} | ${rate}
+| | ... | ${framesize} | ${traffic_profile}
| 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 at 2x 138580pps.
-| | [Tags] | 1T1C | STHREAD
-| | ${framesize}= | Set Variable | 9000
-| | ${duration}= | Set Variable | 10
+| | [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
+| | 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 | ${perf_trial_duration} | ${rate}
+| | ... | ${framesize} | ${traffic_profile}
| 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 at 2x 5.6mpps.
-| | [Tags] | 2T2C | MTHREAD
-| | ${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
+| | 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 | ${perf_trial_duration} | ${rate}
+| | ... | ${framesize} | ${traffic_profile}
| 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 at 2x 812743pps.
-| | [Tags] | 2T2C | MTHREAD
-| | ${framesize}= | Set Variable | 1518
-| | ${duration}= | Set Variable | 10
+| | [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
+| | 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 | ${perf_trial_duration} | ${rate}
+| | ... | ${framesize} | ${traffic_profile}
| 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 at 2x 138580pps.
-| | [Tags] | 2T2C | MTHREAD
-| | ${framesize}= | Set Variable | 9000
-| | ${duration}= | Set Variable | 10
+| | [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
+| | 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 | ${perf_trial_duration} | ${rate}
+| | ... | ${framesize} | ${traffic_profile}
| 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 at 2x 8.9mpps.
-| | [Tags] | 4T4C | MTHREAD
-| | ${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
+| | 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 | ${perf_trial_duration} | ${rate}
+| | ... | ${framesize} | ${traffic_profile}
| 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 at 2x 812743pps.
-| | [Tags] | 4T4C | MTHREAD
-| | ${framesize}= | Set Variable | 1518
-| | ${duration}= | Set Variable | 10
+| | [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
+| | 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 | ${perf_trial_duration} | ${rate}
+| | ... | ${framesize} | ${traffic_profile}
| 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 at 2x 138580pps.
-| | [Tags] | 4T4C | MTHREAD
-| | ${framesize}= | Set Variable | 9000
-| | ${duration}= | Set Variable | 10
+| | [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
+| | 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 | ${perf_trial_duration} | ${rate}
+| | ... | ${framesize} | ${traffic_profile}