aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xbootstrap-verify-perf.sh7
-rw-r--r--resources/libraries/robot/performance.robot10
-rw-r--r--resources/libraries/robot/tagging.robot37
-rw-r--r--tests/suites/performance/Long_Xconnect_Dot1q_Intel-X520-DA2.robot270
-rw-r--r--tests/suites/performance/Short_Xconnect_Dot1q_Intel-X520-DA2.robot236
-rw-r--r--tests/suites/tagging/qinq_l2_xconnect.robot2
6 files changed, 560 insertions, 2 deletions
diff --git a/bootstrap-verify-perf.sh b/bootstrap-verify-perf.sh
index 65f6e7ee55..860e956632 100755
--- a/bootstrap-verify-perf.sh
+++ b/bootstrap-verify-perf.sh
@@ -156,6 +156,13 @@ case "$TEST_TAG" in
-s "performance.Long_Xconnect*" \
tests/
;;
+ PERFTEST_LONG_XCONNECT_DOT1Q )
+ pybot ${PYBOT_ARGS} \
+ -L TRACE \
+ -v TOPOLOGY_PATH:${WORKING_TOPOLOGY} \
+ -s "performance.Long_Xconnect_Dot1q*" \
+ tests/
+ ;;
* )
# run full performance test suite and exit on fail
pybot ${PYBOT_ARGS} \
diff --git a/resources/libraries/robot/performance.robot b/resources/libraries/robot/performance.robot
index e26bc19283..8201ae405f 100644
--- a/resources/libraries/robot/performance.robot
+++ b/resources/libraries/robot/performance.robot
@@ -75,6 +75,16 @@
| | Set Suite Variable | ${dut2_if1}
| | Set Suite Variable | ${dut2_if2}
+| VPP interfaces in path are up
+| | [Documentation] | *Set UP state on VPP interfaces in path on nodes.*
+| | ...
+| | Set Interface State | ${dut1} | ${dut1_if1} | up
+| | Set Interface State | ${dut1} | ${dut1_if2} | up
+| | Set Interface State | ${dut2} | ${dut2_if1} | up
+| | Set Interface State | ${dut2} | ${dut2_if2} | up
+| | Vpp Node Interfaces Ready Wait | ${dut1}
+| | Vpp Node Interfaces Ready Wait | ${dut2}
+
| IPv4 forwarding initialized in a 3-node circular topology
| | [Documentation] | Custom setup of IPv4 addresses on all DUT nodes and TG
| | Set Interface State | ${dut1} | ${dut1_if1} | up
diff --git a/resources/libraries/robot/tagging.robot b/resources/libraries/robot/tagging.robot
index c58acfd9c5..3ae02b5740 100644
--- a/resources/libraries/robot/tagging.robot
+++ b/resources/libraries/robot/tagging.robot
@@ -20,6 +20,7 @@
| Library | resources.libraries.python.NodePath
*** Keywords ***
+
| VLAN subinterfaces initialized on 3-node topology
| | [Arguments] | ${DUT1} | ${INT1} | ${DUT2} | ${INT2} | ${SUB_ID}
| | ... | ${OUTER_VLAN_ID} | ${INNER_VLAN_ID} | ${TYPE_SUBIF}
@@ -56,7 +57,41 @@
| | Set Test Variable | ${subif_name_2}
| | Set Test Variable | ${subif_index_2}
-| L2 tag rewrite pop 2 tags setup on interfaces
+| VLAN dot1q subinterfaces initialized on 3-node topology
+| | [Arguments] | ${DUT1} | ${INT1} | ${DUT2} | ${INT2} | ${SUB_ID}
+| | [Documentation] | *Create two dot1q subinterfaces on DUTs.*
+| | ...
+| | ... | *Arguments:*
+| | ... | - ${DUT1} - Node to add sub-interface.
+| | ... | - ${INT1} - Interface name on which create VLAN sub-interface.
+| | ... | - ${DUT2} - Node to add sub-interface.
+| | ... | - ${INT2} - Interface name on which create VLAN sub-interface.
+| | ... | - ${SUB_ID} - ID of the sub-interface to be created.
+| | ...
+| | ... | _Set testcase variables with name and index of created interfaces:_
+| | ... | - ${subif_name_1}
+| | ... | - ${subif_index_1}
+| | ... | - ${subif_name_2}
+| | ... | - ${subif_index_2}
+| | ...
+| | ... | *Example:*
+| | ...
+| | ... | \| VLAN dot1q subinterfaces initialized on 3-node topology \
+| | ... | \| ${nodes['DUT1']} \| ${dut1_if2} \| ${nodes['DUT2']} \
+| | ... | \| ${dut1_if2} \| 10 \|
+| | ...
+| | ${subif_name_1} | ${subif_index_1}= | Create Vlan Subinterface
+| | | ... | ${DUT1} | ${INT1} | ${SUB_ID}
+| | ${subif_name_2} | ${subif_index_2}= | Create Vlan Subinterface
+| | | ... | ${DUT2} | ${INT2} | ${SUB_ID}
+| | Set Interface State | ${DUT1} | ${subif_index_1} | up
+| | Set Interface State | ${DUT2} | ${subif_index_2} | up
+| | Set Test Variable | ${subif_name_1}
+| | Set Test Variable | ${subif_index_1}
+| | Set Test Variable | ${subif_name_2}
+| | Set Test Variable | ${subif_index_2}
+
+| L2 tag rewrite method setup on interfaces
| | [Arguments] | ${DUT1} | ${SUB_INT1} | ${DUT2} | ${SUB_INT2}
| | ... | ${TAG_REWRITE_METHOD}
| | [Documentation] | *Setup tag rewrite on sub-interfaces on DUTs.*
diff --git a/tests/suites/performance/Long_Xconnect_Dot1q_Intel-X520-DA2.robot b/tests/suites/performance/Long_Xconnect_Dot1q_Intel-X520-DA2.robot
new file mode 100644
index 0000000000..8eef6c8c56
--- /dev/null
+++ b/tests/suites/performance/Long_Xconnect_Dot1q_Intel-X520-DA2.robot
@@ -0,0 +1,270 @@
+# Copyright (c) 2016 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:
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+*** Settings ***
+| Resource | resources/libraries/robot/performance.robot
+| Resource | resources/libraries/robot/tagging.robot
+| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | PERFTEST_LONG
+| ... | NIC_Intel-X520-DA2
+| Suite Setup | 3-node Performance Suite Setup with DUT's NIC model
+| ... | L2 | Intel-X520-DA2
+| Suite Teardown | 3-node Performance Suite Teardown
+| Test Setup | Setup all DUTs before test
+| Test Teardown | Run Keyword | Show statistics on all DUTs
+| Documentation | *Throughput search suite (based on RFC2544).*
+| ...
+| ... | Test suite uses 3-node topology TG - DUT1 - DUT2 - TG, with one link
+| ... | between nodes. Traffic profile contain 2 L2 streams (1 stream per
+| ... | direction). Packets contain Ethernet header, IPv4 header,
+| ... | IP protocol=61 and random payload. Ethernet header MAC addresses are
+| ... | matching MAC addresses of the TG node. DUT nodes are interconnected
+| ... | with VLAN dot1q configured interfaces with VLAN 10.
+
+*** Variables ***
+| ${subid}= | 10
+| ${tag_rewrite}= | pop-1
+
+*** Test Cases ***
+| Find NDR by using RFC2544 linear search and 64B frames through VLAN dot1q sub-interfaces inter-connected using L2 cross connect in 3-node topology
+| | [Documentation]
+| | ... | Find throughput with non drop rate by using linear search starting
+| | ... | at 4.2Mpps, stepping down with step of 0.1Mpps. Frames from and to TG
+| | ... | are 64B long. Tagging is applied between DUTs inserting 4B VLAN ID
+| | ... | into a packet header.
+| | [Tags] | 1_THREAD_NOHTT_RSS_1 | SINGLE_THREAD
+| | ${framesize}= | Set Variable | 64
+| | ${start_rate}= | Set Variable | 4200000
+| | ${step_rate}= | Set Variable | 100000
+| | ${min_rate}= | Set Variable | 100000
+| | ${max_rate}= | Set Variable | 14880952
+| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
+| | And VPP interfaces in path are up
+| | When VLAN dot1q subinterfaces initialized on 3-node topology
+| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
+| | And L2 tag rewrite method setup on interfaces
+| | ... | ${dut1} | ${subif_index_1} | ${dut2} | ${subif_index_2}
+| | ... | ${tag_rewrite}
+| | And Interfaces and VLAN sub-interfaces inter-connected using L2-xconnect
+| | ... | ${dut1} | ${dut1_if1} | ${subif_index_1}
+| | ... | ${dut2} | ${dut2_if2} | ${subif_index_2}
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-xconnect
+| | ... | ${min_rate} | ${max_rate}
+
+| Find NDR by using RFC2544 linear search and 1518B frames through VLAN dot1q sub-interfaces inter-connected using L2 cross connect in 3-node topology
+| | [Documentation]
+| | ... | Find throughput with non drop rate by using linear search starting
+| | ... | at 812,743pps, stepping down with step of 10,000pps. Frames from and
+| | ... | to TG are 1518B long. Tagging is applied between DUTs inserting 4B
+| | ... | VLAN ID into a packet header.
+| | [Tags] | 1_THREAD_NOHTT_RSS_1 | SINGLE_THREAD
+| | ${framesize}= | Set Variable | 1518
+| | ${start_rate}= | Set Variable | 812743
+| | ${step_rate}= | Set Variable | 10000
+| | ${min_rate}= | Set Variable | 10000
+| | ${max_rate}= | Set Variable | 812743
+| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
+| | And VPP interfaces in path are up
+| | When VLAN dot1q subinterfaces initialized on 3-node topology
+| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
+| | And L2 tag rewrite method setup on interfaces
+| | ... | ${dut1} | ${subif_index_1} | ${dut2} | ${subif_index_2}
+| | ... | ${tag_rewrite}
+| | And Interfaces and VLAN sub-interfaces inter-connected using L2-xconnect
+| | ... | ${dut1} | ${dut1_if1} | ${subif_index_1}
+| | ... | ${dut2} | ${dut2_if2} | ${subif_index_2}
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-xconnect
+| | ... | ${min_rate} | ${max_rate}
+
+| Find NDR by using RFC2544 linear search and 9000B frames through VLAN dot1q sub-interfaces inter-connected using L2 cross connect in 3-node topology
+| | [Documentation]
+| | ... | Find throughput with non drop rate by using linear search starting
+| | ... | at 138,580pps, stepping down with step of 5,000pps. Frames from and
+| | ... | to TG are 9000B long. Tagging is applied between DUTs inserting 4B
+| | ... | VLAN ID into a packet header.
+| | [Tags] | 1_THREAD_NOHTT_RSS_1 | SINGLE_THREAD
+| | ${framesize}= | Set Variable | 9000
+| | ${start_rate}= | Set Variable | 138580
+| | ${step_rate}= | Set Variable | 5000
+| | ${min_rate}= | Set Variable | 5000
+| | ${max_rate}= | Set Variable | 138580
+| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
+| | And VPP interfaces in path are up
+| | When VLAN dot1q subinterfaces initialized on 3-node topology
+| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
+| | And L2 tag rewrite method setup on interfaces
+| | ... | ${dut1} | ${subif_index_1} | ${dut2} | ${subif_index_2}
+| | ... | ${tag_rewrite}
+| | And Interfaces and VLAN sub-interfaces inter-connected using L2-xconnect
+| | ... | ${dut1} | ${dut1_if1} | ${subif_index_1}
+| | ... | ${dut2} | ${dut2_if2} | ${subif_index_2}
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-xconnect
+| | ... | ${min_rate} | ${max_rate}
+
+| Find NDR with 2 cores and rss 1 by using RFC2544 linear search and 64B frames through VLAN dot1q sub-interfaces inter-connected using L2 cross connect in 3-node topology
+| | [Documentation]
+| | ... | Find throughput on 2 cores with non drop rate by using linear search
+| | ... | starting at 7.8Mpps, stepping down with step of 0.1Mpps. Frames from
+| | ... | and to TG are 64B long. Tagging is applied between DUTs inserting 4B
+| | ... | VLAN ID into a packet header.
+| | [Tags] | 2_THREAD_NOHTT_RSS_1 | MULTI_THREAD
+| | ${framesize}= | Set Variable | 64
+| | ${start_rate}= | Set Variable | 7800000
+| | ${step_rate}= | Set Variable | 100000
+| | ${min_rate}= | Set Variable | 100000
+| | ${max_rate}= | Set Variable | 14880952
+| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
+| | And VPP interfaces in path are up
+| | When VLAN dot1q subinterfaces initialized on 3-node topology
+| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
+| | And L2 tag rewrite method setup on interfaces
+| | ... | ${dut1} | ${subif_index_1} | ${dut2} | ${subif_index_2}
+| | ... | ${tag_rewrite}
+| | And Interfaces and VLAN sub-interfaces inter-connected using L2-xconnect
+| | ... | ${dut1} | ${dut1_if1} | ${subif_index_1}
+| | ... | ${dut2} | ${dut2_if2} | ${subif_index_2}
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-xconnect
+| | ... | ${min_rate} | ${max_rate}
+
+| Find NDR with 2 cores and rss 1 by using RFC2544 linear search and 1518B frames through VLAN dot1q sub-interfaces inter-connected using L2 cross connect in 3-node topology
+| | [Documentation]
+| | ... | Find throughput on 2 cores with non drop rate by using linear search
+| | ... | starting at 812,743pps, stepping down with step of 10,000pps. Frames
+| | ... | from and to TG are 1518B long. Tagging is applied between DUTs
+| | ... | inserting 4B VLAN ID into a packet header.
+| | [Tags] | 2_THREAD_NOHTT_RSS_1 | MULTI_THREAD
+| | ${framesize}= | Set Variable | 1518
+| | ${start_rate}= | Set Variable | 812743
+| | ${step_rate}= | Set Variable | 10000
+| | ${min_rate}= | Set Variable | 10000
+| | ${max_rate}= | Set Variable | 812743
+| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
+| | And VPP interfaces in path are up
+| | When VLAN dot1q subinterfaces initialized on 3-node topology
+| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
+| | And L2 tag rewrite method setup on interfaces
+| | ... | ${dut1} | ${subif_index_1} | ${dut2} | ${subif_index_2}
+| | ... | ${tag_rewrite}
+| | And Interfaces and VLAN sub-interfaces inter-connected using L2-xconnect
+| | ... | ${dut1} | ${dut1_if1} | ${subif_index_1}
+| | ... | ${dut2} | ${dut2_if2} | ${subif_index_2}
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-xconnect
+| | ... | ${min_rate} | ${max_rate}
+
+| Find NDR with 2 cores and rss 1 by using RFC2544 linear search and 9000B frames through VLAN dot1q sub-interfaces inter-connected using L2 cross connect in 3-node topology
+| | [Documentation]
+| | ... | Find throughput on 2 cores with non drop rate by using linear search
+| | ... | starting at 138,580pps, stepping down with step of 5,000pps. Frames
+| | ... | from and to TG are 9000B long. Tagging is applied between DUTs
+| | ... | inserting 4B VLAN ID into a packet header.
+| | [Tags] | 2_THREAD_NOHTT_RSS_1 | MULTI_THREAD
+| | ${framesize}= | Set Variable | 9000
+| | ${start_rate}= | Set Variable | 138580
+| | ${step_rate}= | Set Variable | 5000
+| | ${min_rate}= | Set Variable | 5000
+| | ${max_rate}= | Set Variable | 138580
+| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
+| | And VPP interfaces in path are up
+| | When VLAN dot1q subinterfaces initialized on 3-node topology
+| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
+| | And L2 tag rewrite method setup on interfaces
+| | ... | ${dut1} | ${subif_index_1} | ${dut2} | ${subif_index_2}
+| | ... | ${tag_rewrite}
+| | And Interfaces and VLAN sub-interfaces inter-connected using L2-xconnect
+| | ... | ${dut1} | ${dut1_if1} | ${subif_index_1}
+| | ... | ${dut2} | ${dut2_if2} | ${subif_index_2}
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-xconnect
+| | ... | ${min_rate} | ${max_rate}
+
+| Find NDR with 4 cores and rss 2 by using RFC2544 linear search and 64B frames through VLAN dot1q sub-interfaces inter-connected using L2 cross connect in 3-node topology
+| | [Documentation]
+| | ... | Find throughput on 4 cores and rss 2 with non drop rate by using
+| | ... | linear search starting at 12Mpps, stepping down with step of 0.1Mpps.
+| | ... | Frames from and to TG are 64B long. Tagging is applied between DUTs
+| | ... | inserting 4B VLAN ID into a packet header.
+| | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD
+| | ${framesize}= | Set Variable | 64
+| | ${start_rate}= | Set Variable | 12000000
+| | ${step_rate}= | Set Variable | 100000
+| | ${min_rate}= | Set Variable | 100000
+| | ${max_rate}= | Set Variable | 14880952
+| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
+| | And VPP interfaces in path are up
+| | When VLAN dot1q subinterfaces initialized on 3-node topology
+| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
+| | And L2 tag rewrite method setup on interfaces
+| | ... | ${dut1} | ${subif_index_1} | ${dut2} | ${subif_index_2}
+| | ... | ${tag_rewrite}
+| | And Interfaces and VLAN sub-interfaces inter-connected using L2-xconnect
+| | ... | ${dut1} | ${dut1_if1} | ${subif_index_1}
+| | ... | ${dut2} | ${dut2_if2} | ${subif_index_2}
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-xconnect
+| | ... | ${min_rate} | ${max_rate}
+
+| Find NDR with 4 cores and rss 2 by using RFC2544 linear search and 1518B frames through VLAN dot1q sub-interfaces inter-connected using L2 cross connect in 3-node topology
+| | [Documentation]
+| | ... | Find throughput on 4 cores and rss 2 with non drop rate by using
+| | ... | linear search starting at 812,743pps, stepping down with step of
+| | ... | 10,000pps. Frames from and to TG are 1518B long. Tagging is applied
+| | ... | between DUTs inserting 4B VLAN ID into a packet header.
+| | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD
+| | ${framesize}= | Set Variable | 1518
+| | ${start_rate}= | Set Variable | 812743
+| | ${step_rate}= | Set Variable | 10000
+| | ${min_rate}= | Set Variable | 10000
+| | ${max_rate}= | Set Variable | 812743
+| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
+| | And VPP interfaces in path are up
+| | When VLAN dot1q subinterfaces initialized on 3-node topology
+| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
+| | And L2 tag rewrite method setup on interfaces
+| | ... | ${dut1} | ${subif_index_1} | ${dut2} | ${subif_index_2}
+| | ... | ${tag_rewrite}
+| | And Interfaces and VLAN sub-interfaces inter-connected using L2-xconnect
+| | ... | ${dut1} | ${dut1_if1} | ${subif_index_1}
+| | ... | ${dut2} | ${dut2_if2} | ${subif_index_2}
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-xconnect
+| | ... | ${min_rate} | ${max_rate}
+
+| Find NDR with 4 cores and rss 2 by using RFC2544 linear search and 9000B frames through VLAN dot1q sub-interfaces inter-connected using L2 cross connect in 3-node topology
+| | [Documentation]
+| | ... | Find throughput on 4 cores and rss 2 with non drop rate by using
+| | ... | linear search starting at 138,580pps, stepping down with step of
+| | ... | 5,000pps. Frames from and to TG are 9000B long. Tagging is applied
+| | ... | between DUTs inserting 4B VLAN ID into a packet header.
+| | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD
+| | ${framesize}= | Set Variable | 9000
+| | ${start_rate}= | Set Variable | 138580
+| | ${step_rate}= | Set Variable | 5000
+| | ${min_rate}= | Set Variable | 5000
+| | ${max_rate}= | Set Variable | 138580
+| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
+| | And VPP interfaces in path are up
+| | When VLAN dot1q subinterfaces initialized on 3-node topology
+| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
+| | And L2 tag rewrite method setup on interfaces
+| | ... | ${dut1} | ${subif_index_1} | ${dut2} | ${subif_index_2}
+| | ... | ${tag_rewrite}
+| | And Interfaces and VLAN sub-interfaces inter-connected using L2-xconnect
+| | ... | ${dut1} | ${dut1_if1} | ${subif_index_1}
+| | ... | ${dut2} | ${dut2_if2} | ${subif_index_2}
+| | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
+| | ... | ${step_rate} | 3-node-xconnect
+| | ... | ${min_rate} | ${max_rate}
diff --git a/tests/suites/performance/Short_Xconnect_Dot1q_Intel-X520-DA2.robot b/tests/suites/performance/Short_Xconnect_Dot1q_Intel-X520-DA2.robot
new file mode 100644
index 0000000000..d0ede20e93
--- /dev/null
+++ b/tests/suites/performance/Short_Xconnect_Dot1q_Intel-X520-DA2.robot
@@ -0,0 +1,236 @@
+# Copyright (c) 2016 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:
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+*** Settings ***
+| Resource | resources/libraries/robot/performance.robot
+| Resource | resources/libraries/robot/tagging.robot
+| 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
+| ... | L2 | Intel-X520-DA2
+| Suite Teardown | 3-node Performance Suite Teardown
+| Test Setup | Setup all DUTs before test
+| Test Teardown | Run Keyword | Show statistics on all DUTs
+| Documentation | Minimal throughput acceptance test cases
+
+*** Variables ***
+| ${subid}= | 10
+| ${tag_rewrite}= | pop-1
+
+*** Test Cases ***
+| 1core VPP passes 64B frames through VLAN dot1q sub-interfaces inter-connected using L2 cross connect at 2x2.9Mpps in 3-node topology
+| | [Documentation]
+| | ... | VPP with 1 core should pass 64B frames through VLAN dot1q
+| | ... | sub-interfaces inter-connected using L2 cross connect at 2x2.9Mpps in
+| | ... | 3-node topology. Tagging is applied between DUTs inserting 4B VLAN ID
+| | ... | into a packet header.
+| | [Tags] | 1_THREAD_NOHTT_RSS_1 | SINGLE_THREAD
+| | ${framesize}= | Set Variable | 64
+| | ${duration}= | Set Variable | 10
+| | ${rate}= | Set Variable | 2.9mpps
+| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
+| | And VPP interfaces in path are up
+| | When VLAN dot1q subinterfaces initialized on 3-node topology
+| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
+| | And L2 tag rewrite method setup on interfaces
+| | ... | ${dut1} | ${subif_index_1} | ${dut2} | ${subif_index_2}
+| | ... | ${tag_rewrite}
+| | And Interfaces and VLAN sub-interfaces inter-connected using L2-xconnect
+| | ... | ${dut1} | ${dut1_if1} | ${subif_index_1}
+| | ... | ${dut2} | ${dut2_if2} | ${subif_index_2}
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-xconnect
+
+| 1core VPP passes 1518B frames through VLAN dot1q sub-interfaces inter-connected using L2 cross connect at 2x 720,000pps in 3-node topology
+| | [Documentation]
+| | ... | VPP with 1 core should pass 1518B frames through VLAN dot1q
+| | ... | sub-interfaces inter-connected using L2 cross connect at
+| | ... | 2x 720,000pps in 3-node topology. Tagging is applied between DUTs
+| | ... | inserting 4B VLAN ID into a packet header.
+| | [Tags] | 1_THREAD_NOHTT_RSS_1 | SINGLE_THREAD
+| | ${framesize}= | Set Variable | 1518
+| | ${duration}= | Set Variable | 10
+| | ${rate}= | Set Variable | 720000pps
+| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
+| | And VPP interfaces in path are up
+| | When VLAN dot1q subinterfaces initialized on 3-node topology
+| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
+| | And L2 tag rewrite method setup on interfaces
+| | ... | ${dut1} | ${subif_index_1} | ${dut2} | ${subif_index_2}
+| | ... | ${tag_rewrite}
+| | And Interfaces and VLAN sub-interfaces inter-connected using L2-xconnect
+| | ... | ${dut1} | ${dut1_if1} | ${subif_index_1}
+| | ... | ${dut2} | ${dut2_if2} | ${subif_index_2}
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-xconnect
+
+| 1core VPP passes 9000B frames through VLAN dot1q sub-interfaces inter-connected using L2 cross connect at 2x 120,000pps in 3-node topology
+| | [Documentation]
+| | ... | VPP with 1 core should pass 9000B frames through VLAN dot1q
+| | ... | sub-interfaces inter-connected using L2 cross connect at
+| | ... | 2x 120,000pps in 3-node topology. Tagging is applied between DUTs
+| | ... | inserting 4B VLAN ID into a packet header.
+| | [Tags] | 1_THREAD_NOHTT_RSS_1 | SINGLE_THREAD
+| | ${framesize}= | Set Variable | 9000
+| | ${duration}= | Set Variable | 10
+| | ${rate}= | Set Variable | 120000pps
+| | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
+| | And VPP interfaces in path are up
+| | When VLAN dot1q subinterfaces initialized on 3-node topology
+| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
+| | And L2 tag rewrite method setup on interfaces
+| | ... | ${dut1} | ${subif_index_1} | ${dut2} | ${subif_index_2}
+| | ... | ${tag_rewrite}
+| | And Interfaces and VLAN sub-interfaces inter-connected using L2-xconnect
+| | ... | ${dut1} | ${dut1_if1} | ${subif_index_1}
+| | ... | ${dut2} | ${dut2_if2} | ${subif_index_2}
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-xconnect
+
+| 2core VPP with rss 1 passes 64B frames through VLAN dot1q sub-interfaces inter-connected using L2 cross connect at 2x5.8Mpps in 3-node topology
+| | [Documentation]
+| | ... | VPP with 2 cores should pass 64B frames through VLAN dot1q
+| | ... | sub-interfaces inter-connected using L2 cross connect at 2x5.8Mpps in
+| | ... | 3-node topology. Tagging is applied between DUTs inserting 4B VLAN ID
+| | ... | into a packet header.
+| | [Tags] | 2_THREAD_NOHTT_RSS_1 | MULTI_THREAD
+| | ${framesize}= | Set Variable | 64
+| | ${duration}= | Set Variable | 10
+| | ${rate}= | Set Variable | 5.8mpps
+| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
+| | And VPP interfaces in path are up
+| | When VLAN dot1q subinterfaces initialized on 3-node topology
+| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
+| | And L2 tag rewrite method setup on interfaces
+| | ... | ${dut1} | ${subif_index_1} | ${dut2} | ${subif_index_2}
+| | ... | ${tag_rewrite}
+| | And Interfaces and VLAN sub-interfaces inter-connected using L2-xconnect
+| | ... | ${dut1} | ${dut1_if1} | ${subif_index_1}
+| | ... | ${dut2} | ${dut2_if2} | ${subif_index_2}
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-xconnect
+
+| 2core VPP with rss 1 passes 1518B frames through VLAN dot1q sub-interfaces inter-connected using L2 cross connect at 2x 720,000pps in 3-node topology
+| | [Documentation]
+| | ... | VPP with 2 core should pass 1518B frames through VLAN dot1q
+| | ... | sub-interfaces inter-connected using L2 cross connect at
+| | ... | 2x 720,000pps in 3-node topology. Tagging is applied between DUTs
+| | ... | inserting 4B VLAN ID into a packet header.
+| | [Tags] | 2_THREAD_NOHTT_RSS_1 | MULTI_THREAD
+| | ${framesize}= | Set Variable | 1518
+| | ${duration}= | Set Variable | 10
+| | ${rate}= | Set Variable | 720000pps
+| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
+| | And VPP interfaces in path are up
+| | When VLAN dot1q subinterfaces initialized on 3-node topology
+| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
+| | And L2 tag rewrite method setup on interfaces
+| | ... | ${dut1} | ${subif_index_1} | ${dut2} | ${subif_index_2}
+| | ... | ${tag_rewrite}
+| | And Interfaces and VLAN sub-interfaces inter-connected using L2-xconnect
+| | ... | ${dut1} | ${dut1_if1} | ${subif_index_1}
+| | ... | ${dut2} | ${dut2_if2} | ${subif_index_2}
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-xconnect
+
+| 2core VPP with rss 1 passes 9000B frames through VLAN dot1q sub-interfaces inter-connected using L2 cross connect at 2x 120,000pps in 3-node topology
+| | [Documentation]
+| | ... | VPP with 2 core should pass 9000B frames through VLAN dot1q
+| | ... | sub-interfaces inter-connected using L2 cross connect at
+| | ... | 2x 120,000pps in 3-node topology. Tagging is applied between DUTs
+| | ... | inserting 4B VLAN ID into a packet header.
+| | [Tags] | 2_THREAD_NOHTT_RSS_1 | MULTI_THREAD
+| | ${framesize}= | Set Variable | 9000
+| | ${duration}= | Set Variable | 10
+| | ${rate}= | Set Variable | 120000pps
+| | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
+| | And VPP interfaces in path are up
+| | When VLAN dot1q subinterfaces initialized on 3-node topology
+| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
+| | And L2 tag rewrite method setup on interfaces
+| | ... | ${dut1} | ${subif_index_1} | ${dut2} | ${subif_index_2}
+| | ... | ${tag_rewrite}
+| | And Interfaces and VLAN sub-interfaces inter-connected using L2-xconnect
+| | ... | ${dut1} | ${dut1_if1} | ${subif_index_1}
+| | ... | ${dut2} | ${dut2_if2} | ${subif_index_2}
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-xconnect
+
+| 4core VPP with rss 2 passes 64B frames through VLAN dot1q sub-interfaces inter-connected using L2 cross connect at 2x9.0Mpps in 3-node topology
+| | [Documentation]
+| | ... | VPP with 4 cores and rss 2 should pass 64B frames through VLAN dot1q
+| | ... | sub-interfaces inter-connected using L2 cross connect at 2x9.0Mpps in
+| | ... | 3-node topology. Tagging is applied between DUTs inserting 4B VLAN ID
+| | ... | into a packet header.
+| | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD
+| | ${framesize}= | Set Variable | 64
+| | ${duration}= | Set Variable | 10
+| | ${rate}= | Set Variable | 9.0mpps
+| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
+| | And VPP interfaces in path are up
+| | When VLAN dot1q subinterfaces initialized on 3-node topology
+| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
+| | And L2 tag rewrite method setup on interfaces
+| | ... | ${dut1} | ${subif_index_1} | ${dut2} | ${subif_index_2}
+| | ... | ${tag_rewrite}
+| | And Interfaces and VLAN sub-interfaces inter-connected using L2-xconnect
+| | ... | ${dut1} | ${dut1_if1} | ${subif_index_1}
+| | ... | ${dut2} | ${dut2_if2} | ${subif_index_2}
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-xconnect
+
+| 4core VPP with rss 2 passes 1518B frames through VLAN dot1q sub-interfaces inter-connected using L2 cross connect at 2x 720,000pps in 3-node topology
+| | [Documentation]
+| | ... | VPP with 4 cores and rss 2 should pass 1518B frames through VLAN
+| | ... | dot1q sub-interfaces inter-connected using L2 cross connect at
+| | ... | 2x 720,000pps in 3-node topology. Tagging is applied between DUTs
+| | ... | inserting 4B VLAN ID into a packet header.
+| | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD
+| | ${framesize}= | Set Variable | 1518
+| | ${duration}= | Set Variable | 10
+| | ${rate}= | Set Variable | 720000pps
+| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
+| | And VPP interfaces in path are up
+| | When VLAN dot1q subinterfaces initialized on 3-node topology
+| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
+| | And L2 tag rewrite method setup on interfaces
+| | ... | ${dut1} | ${subif_index_1} | ${dut2} | ${subif_index_2}
+| | ... | ${tag_rewrite}
+| | And Interfaces and VLAN sub-interfaces inter-connected using L2-xconnect
+| | ... | ${dut1} | ${dut1_if1} | ${subif_index_1}
+| | ... | ${dut2} | ${dut2_if2} | ${subif_index_2}
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-xconnect
+
+| 4core VPP with rss 2 passes 9000B frames through VLAN dot1q sub-interfaces inter-connected using L2 cross connect at 2x 120,000pps in 3-node topology
+| | [Documentation]
+| | ... | VPP with 4 cores and rss 2 should pass 9000B frames through VLAN
+| | ... | dot1q sub-interfaces inter-connected using L2 cross connect at
+| | ... | 2x 120,000pps in 3-node topology. Tagging is applied between DUTs
+| | ... | inserting 4B VLAN ID into a packet header.
+| | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD
+| | ${framesize}= | Set Variable | 9000
+| | ${duration}= | Set Variable | 10
+| | ${rate}= | Set Variable | 120000pps
+| | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
+| | And VPP interfaces in path are up
+| | When VLAN dot1q subinterfaces initialized on 3-node topology
+| | ... | ${dut1} | ${dut1_if2} | ${dut2} | ${dut2_if1} | ${subid}
+| | And L2 tag rewrite method setup on interfaces
+| | ... | ${dut1} | ${subif_index_1} | ${dut2} | ${subif_index_2}
+| | ... | ${tag_rewrite}
+| | And Interfaces and VLAN sub-interfaces inter-connected using L2-xconnect
+| | ... | ${dut1} | ${dut1_if1} | ${subif_index_1}
+| | ... | ${dut2} | ${dut2_if2} | ${subif_index_2}
+| | Then Traffic should pass with no loss | ${duration} | ${rate}
+| | ... | ${framesize} | 3-node-xconnect
diff --git a/tests/suites/tagging/qinq_l2_xconnect.robot b/tests/suites/tagging/qinq_l2_xconnect.robot
index 57f61101fd..ed0e734c30 100644
--- a/tests/suites/tagging/qinq_l2_xconnect.robot
+++ b/tests/suites/tagging/qinq_l2_xconnect.robot
@@ -41,7 +41,7 @@
| | When VLAN subinterfaces initialized on 3-node topology
| | ... | ${dut1_node} | ${dut1_to_dut2} | ${dut2_node} | ${dut2_to_dut1} | ${subid}
| | ... | ${outer_vlan_id} | ${inner_vlan_id} | ${type_subif}
-| | And L2 tag rewrite pop 2 tags setup on interfaces
+| | And L2 tag rewrite method setup on interfaces
| | ... | ${dut1_node} | ${subif_index_1} | ${dut2_node} | ${subif_index_2}
| | ... | ${tag_rewrite_method}
| | And Interfaces and VLAN sub-interfaces inter-connected using L2-xconnect