From: Andrej Kozemcak Date: Tue, 31 May 2016 08:13:21 +0000 (+0200) Subject: CSIT-200: Lisp performance test X-Git-Url: https://gerrit.fd.io/r/gitweb?p=csit.git;a=commitdiff_plain;h=32ffb106ab41adab440a509ff8f6ec947ffe263d CSIT-200: Lisp performance test Change-Id: I8a54b79ee03c2f5defc4eeba486086d793484668 Signed-off-by: Andrej Kozemcak Signed-off-by: pmikus --- diff --git a/docs/tag_documentation.rst b/docs/tag_documentation.rst index de97c6c9e9..c4c0511247 100644 --- a/docs/tag_documentation.rst +++ b/docs/tag_documentation.rst @@ -109,3 +109,17 @@ FIB_200K FIB_2M 2x1,000,000 entries in single fib table + +LISP TAGs +--------- +LISP_IPv4 + Test Lisp in IPv4 topology + +LISP_IPv6 + Test Lisp in IPv6 topology + +LISP_IPv4oIPv6 + Test IPv4 over IPv6 topology + +LISP_IPv6oIPv4 + Test IPv6 over IPv4 topology diff --git a/resources/libraries/robot/performance.robot b/resources/libraries/robot/performance.robot index 4e12ded56d..579e2dbd92 100644 --- a/resources/libraries/robot/performance.robot +++ b/resources/libraries/robot/performance.robot @@ -58,6 +58,34 @@ | | ... | for 10GE with 9008B L2 Frame. | | ... | - 10Ge_linerate_pps_IMIX_v4_1 - Maximum number of packet per second | | ... | for 10GE with IMIX_v4_1 profile. +| | ... | - 10Ge_lisp_linerate_pps_72B - Maximum number of packets per second +| | ... | for 10GE with 72B L2 Frame, Lisp and +| | ... | IPv4 header. +| | ... | - 10Ge_lisp_linerate_pps_86B - Maximum number of packets per second +| | ... | for 10GE with 86B L2 Frame, Lisp and +| | ... | IPv4 header. +| | ... | - 10Ge_lisp_linerate_pps_1488B - Maximum number of packets per +| | ... | second for 10GE with 1488B L2 +| | ... | Frame, Lisp and IPv6 header. +| | ... | - 10Ge_lisp_linerate_pps_9008B - Maximum number of packets per +| | ... | second for 10GE with 9008B L2 +| | ... | Frame, Lisp, IPv4 or IPv6 header. +| | ... | - 10Ge_lisp_iph_linerate_pps_112B - Maximum number of packets per +| | ... | second for 10GE with 112B L2 +| | ... | Frame, Lisp, IPv4 and IPv6 +| | ... | header. +| | ... | - 10Ge_lisp_iph_linerate_pps_126B - Maximum number of packets per +| | ... | second for 10GE with 126B L2 +| | ... | Frame, Lisp, IPv4 and IPv6 +| | ... | header. +| | ... | - 10Ge_lisp_iph_linerate_pps_1508B - Maximum number of packets per +| | ... | second for 10GE with 1508B L2 +| | ... | Frame, Lisp, IPv4 and IPv6 +| | ... | header. +| | ... | - 10Ge_lisp_iph_linerate_pps_9048B - Maximum number of packets per +| | ... | second for 10GE with 9048B L2 +| | ... | Frame, Lisp, IPv4 and IPv6 +| | ... | header. | | ... | - 40Ge_linerate_pps_64B - Maximum number of packet per second | | ... | for 40GE with 64B L2 Frame. | | ... | - 40Ge_linerate_pps_68B - Maximum number of packet per second @@ -80,6 +108,34 @@ | | ... | for 40GE with 9008B L2 Frame. | | ... | - 40Ge_linerate_pps_IMIX_v4_1 - Maximum number of packet per second | | ... | for 40GE with IMIX_v4_1 profile. +| | ... | - 40Ge_lisp_linerate_pps_72B - Maximum number of packets per second +| | ... | for 40GE with 72B L2 Frame, Lisp and +| | ... | IPv4 header. +| | ... | - 40Ge_lisp_linerate_pps_86B - Maximum number of packets per second +| | ... | for 40GE with 86B L2 Frame, Lisp and +| | ... | IPv4 header. +| | ... | - 40Ge_lisp_linerate_pps_1488B - Maximum number of packets per +| | ... | second for 40GE with 1488B L2 +| | ... | Frame, Lisp and IPv6 header. +| | ... | - 40Ge_lisp_linerate_pps_9008B - Maximum number of packets per +| | ... | second for 40GE with 9008B L2 +| | ... | Frame, Lisp, IPv4 or IPv6 header. +| | ... | - 40Ge_lisp_iph_linerate_pps_112B - Maximum number of packets per +| | ... | second for 40GE with 112B L2 +| | ... | Frame, Lisp, IPv4 and IPv6 +| | ... | header. +| | ... | - 40Ge_lisp_iph_linerate_pps_126B - Maximum number of packets per +| | ... | second for 40GE with 126B L2 +| | ... | Frame, Lisp, IPv4 and IPv6 +| | ... | header. +| | ... | - 40Ge_lisp_iph_linerate_pps_1508B - Maximum number of packets per +| | ... | second for 40GE with 1508B L2 +| | ... | Frame, Lisp, IPv4 and IPv6 +| | ... | header. +| | ... | - 40Ge_lisp_iph_linerate_pps_9048B - Maximum number of packets per +| | ... | second for 40GE with 9048B L2 +| | ... | Frame, Lisp, IPv4 and IPv6 +| | ... | header. | | ... | | Set Suite Variable | ${10Ge_linerate_pps_64B} | 14880952 | | Set Suite Variable | ${10Ge_linerate_pps_68B} | 14204545 @@ -91,6 +147,14 @@ | | Set Suite Variable | ${10Ge_linerate_pps_9004B} | 138519 | | Set Suite Variable | ${10Ge_linerate_pps_9008B} | 138458 | | Set Suite Variable | ${10Ge_linerate_pps_IMIX_v4_1} | 3343736 +| | Set Suite Variable | ${10Ge_lisp_linerate_pps_72B} | 13586956 +| | Set Suite Variable | ${10Ge_lisp_linerate_pps_86B} | 11792452 +| | Set Suite Variable | ${10Ge_lisp_linerate_pps_1488B} | 828912 +| | Set Suite Variable | ${10Ge_lisp_linerate_pps_9008B} | 138458 +| | Set Suite Variable | ${10Ge_lisp_iph_linerate_pps_112B} | 9469696 +| | Set Suite Variable | ${10Ge_lisp_iph_linerate_pps_126B} | 8561643 +| | Set Suite Variable | ${10Ge_lisp_iph_linerate_pps_1508B} | 818062 +| | Set Suite Variable | ${10Ge_lisp_iph_linerate_pps_9048B} | 137847 | | Set Suite Variable | ${40Ge_linerate_pps_64B} | 59523809 | | Set Suite Variable | ${40Ge_linerate_pps_68B} | 56818181 | | Set Suite Variable | ${40Ge_linerate_pps_72B} | 54347826 @@ -101,6 +165,14 @@ | | Set Suite Variable | ${40Ge_linerate_pps_9004B} | 554078 | | Set Suite Variable | ${40Ge_linerate_pps_9008B} | 553832 | | Set Suite Variable | ${40Ge_linerate_pps_IMIX_v4_1} | 13374944 +| | Set Suite Variable | ${40Ge_lisp_linerate_pps_72B} | 54347826 +| | Set Suite Variable | ${40Ge_lisp_linerate_pps_86B} | 47169811 +| | Set Suite Variable | ${40Ge_lisp_linerate_pps_1488B} | 3315649 +| | Set Suite Variable | ${40Ge_lisp_linerate_pps_9008B} | 553832 +| | Set Suite Variable | ${40Ge_lisp_iph_linerate_pps_112B} | 37878787 +| | Set Suite Variable | ${40Ge_lisp_iph_linerate_pps_126B} | 34246575 +| | Set Suite Variable | ${40Ge_lisp_iph_linerate_pps_1508B} | 3272251 +| | Set Suite Variable | ${40Ge_lisp_iph_linerate_pps_9048B} | 551389 | Calculate pps | | [Documentation] @@ -1060,3 +1132,181 @@ | | | Run Keyword | ${vm_name}.Qemu Kill | | | Run Keyword | ${vm_name}.Qemu Clear Socks +| Lisp IPv4 forwarding initialized in a 3-node circular topology +| | [Documentation] | Custom setup of IPv4 addresses on all DUT nodes and TG \ +| | ... | Don`t set route. +| | ... +| | ... | *Arguments:* +| | ... | -${dut1_dut2_address} - Ip address from DUT1 to DUT2. Type: string +| | ... | -${dut1_tg_address} - Ip address from DUT1 to tg. Type: string +| | ... | -${dut2_dut1_address} - Ip address from DUT2 to DUT1. Type: string +| | ... | -${dut1_tg_address} - Ip address from DUT1 to tg. Type: string +| | ... | -${duts_prefix} - ip prefix. Type: int +| | ... +| | ... | *Return:* +| | ... | - No value returned +| | ... +| | ... | *Example:* +| | ... | \| Lisp IPv4 forwarding initialized in a 3-node circular topology \ +| | ... | \| ${dut1_dut2_address} \| ${dut1_tg_address} \ +| | ... | \| ${dut2_dut1_address} \| ${dut2_tg_address} \| ${duts_prefix} \| +| | ... +| | [Arguments] | ${dut1_dut2_address} | ${dut1_tg_address} +| | ... | ${dut2_dut1_address} | ${dut2_tg_address} +| | ... | ${duts_prefix} +| | 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 +| | ${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} +| | ${dut2_if1_mac}= | Get Interface MAC | ${dut2} | ${dut2_if1} +| | dut1_v4.set_arp | ${dut1_if1} | 10.10.10.2 | ${tg1_if1_mac} +| | dut1_v4.set_arp | ${dut1_if2} | ${dut2_dut1_address} | ${dut2_if1_mac} +| | dut2_v4.set_arp | ${dut2_if1} | ${dut1_dut2_address} | ${dut1_if2_mac} +| | dut2_v4.set_arp | ${dut2_if2} | 20.20.20.2 | ${tg1_if2_mac} +| | dut1_v4.set_ip | ${dut1_if1} | ${dut1_tg_address} | ${duts_prefix} +| | dut1_v4.set_ip | ${dut1_if2} | ${dut1_dut2_address} | ${duts_prefix} +| | dut2_v4.set_ip | ${dut2_if1} | ${dut2_dut1_address} | ${duts_prefix} +| | dut2_v4.set_ip | ${dut2_if2} | ${dut2_tg_address} | ${duts_prefix} +| | All Vpp Interfaces Ready Wait | ${nodes} + +| Lisp IPv6 forwarding initialized in a 3-node circular topology +| | [Documentation] | Custom setup of IPv6 topology on all DUT nodes \ +| | ... | Don`t set route. +| | ... +| | ... | *Arguments:* +| | ... | -${dut1_dut2_address} - Ip address from DUT1 to DUT2. Type: string +| | ... | -${dut1_tg_address} - Ip address from DUT1 to tg. Type: string +| | ... | -${dut2_dut1_address} - Ip address from DUT2 to DUT1. Type: string +| | ... | -${dut1_tg_address} - Ip address from DUT1 to tg. Type: string +| | ... | -${duts_prefix} - ip prefix. Type: int +| | ... +| | ... | *Return:* +| | ... | - No value returned +| | ... +| | ... | *Example:* +| | ... | \| Lisp IPv6 forwarding initialized in a 3-node circular topology \ +| | ... | \| ${dut1_dut2_address} \| ${dut1_tg_address} \ +| | ... | \| ${dut2_dut1_address} \| ${dut2_tg_address} \| ${duts_prefix} \| +| | ... +| | [Arguments] | ${dut1_dut2_address} | ${dut1_tg_address} +| | ... | ${dut2_dut1_address} | ${dut2_tg_address} +| | ... | ${prefix} +| | ${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} +| | ${dut2_if1_mac}= | Get Interface MAC | ${dut2} | ${dut2_if1} +| | VPP Set If IPv6 Addr | ${dut1} | ${dut1_if1} | ${dut1_tg_address} +| | ... | ${prefix} +| | VPP Set If IPv6 Addr | ${dut1} | ${dut1_if2} | ${dut1_dut2_address} +| | ... | ${prefix} +| | VPP Set If IPv6 Addr | ${dut2} | ${dut2_if1} | ${dut2_dut1_address} +| | ... | ${prefix} +| | VPP Set If IPv6 Addr | ${dut2} | ${dut2_if2} | ${dut2_tg_address} +| | ... | ${prefix} +| | Vpp nodes ra suppress link layer | ${nodes} +| | Add Ip Neighbor | ${dut1} | ${dut1_if1} | 2001:1::2 +| | ... | ${tg1_if1_mac} +| | Add Ip Neighbor | ${dut2} | ${dut2_if2} | 2001:2::2 +| | ... | ${tg1_if2_mac} +| | Add Ip Neighbor | ${dut1} | ${dut1_if2} | ${dut2_dut1_address} +| | ... | ${dut2_if1_mac} +| | Add Ip Neighbor | ${dut2} | ${dut2_if1} | ${dut1_dut2_address} +| | ... | ${dut1_if2_mac} + +| Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | [Documentation] | Custom setup of IPv4 over IPv6 topology on all DUT nodes \ +| | ... | Don`t set route. +| | ... +| | ... | *Arguments:* +| | ... | -${dut1_dut2_ip6_address} - IPv6 address from DUT1 to DUT2. +| | ... | Type: string +| | ... | -${dut1_tg_ip4_address} - IPv4 address from DUT1 to tg. Type: string +| | ... | -${dut2_dut1_ip6_address} - IPv6 address from DUT2 to DUT1. +| | ... | Type: string +| | ... | -${dut1_tg_ip4_address} - IPv4 address from DUT1 to tg. Type: string +| | ... | -${prefix4} - IPv4 prefix. Type: int +| | ... | -${prefix6} - IPv6 prefix. Type: int +| | ... +| | ... | *Return:* +| | ... | - No value returned +| | ... +| | ... | *Example:* +| | ... | \| Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology \ +| | ... | \| ${dut1_dut2_ip6_address} \| ${dut1_tg_ip4_address} \ +| | ... | \| ${dut2_dut1_ip6_address} \| ${dut2_tg_ip4_address} \ +| | ... | \| ${prefix4} \| ${prefix6} \| +| | ... +| | [Arguments] | ${dut1_dut2_ip6_address} | ${dut1_tg_ip4_address} +| | ... | ${dut2_dut1_ip6_address} | ${dut2_tg_ip4_address} +| | ... | ${prefix4} | ${prefix6} +| | 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 +| | ${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} +| | ${dut2_if1_mac}= | Get Interface MAC | ${dut2} | ${dut2_if1} +| | dut1_v4.set_ip | ${dut1_if1} | ${dut1_tg_ip4_address} | ${prefix4} +| | VPP Set If IPv6 Addr | ${dut1} | ${dut1_if2} | ${dut1_dut2_ip6_address} +| | ... | ${prefix6} +| | VPP Set If IPv6 Addr | ${dut2} | ${dut2_if1} | ${dut2_dut1_ip6_address} +| | ... | ${prefix6} +| | dut2_v4.set_ip | ${dut2_if2} | ${dut2_tg_ip4_address} | ${prefix4} +| | Vpp nodes ra suppress link layer | ${nodes} +| | dut1_v4.set_arp | ${dut1_if1} | 10.10.10.2 | ${tg1_if1_mac} +| | dut2_v4.set_arp | ${dut2_if2} | 20.20.20.2 | ${tg1_if2_mac} +| | Add Ip Neighbor | ${dut1} | ${dut1_if2} | ${dut2_dut1_ip6_address} +| | ... | ${dut2_if1_mac} +| | Add Ip Neighbor | ${dut2} | ${dut2_if1} | ${dut1_dut2_ip6_address} +| | ... | ${dut1_if2_mac} + +| Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | [Documentation] | Custom setup of IPv4 over IPv6 topology on all DUT nodes \ +| | ... | Don`t set route. +| | ... +| | ... | *Arguments:* +| | ... | -${dut1_dut2_ip4_address} - IPv4 address from DUT1 to DUT2. +| | ... | Type: string +| | ... | -${dut1_tg_ip6_address} - IPv6 address from DUT1 to tg. Type: string +| | ... | -${dut2_dut1_ip4_address} - IPv4 address from DUT2 to DUT1. +| | ... | Type: string +| | ... | -${dut1_tg_ip6_address} - IPv6 address from DUT1 to tg. Type: string +| | ... | -${prefix4} - IPv4 prefix. Type: int +| | ... | -${prefix6} - IPv6 prefix. Type: int +| | ... +| | ... | *Return:* +| | ... | - No value returned +| | ... +| | ... | *Example:* +| | ... | \| Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology \ +| | ... | \| ${dut1_dut2_ip4_address} \| ${dut1_tg_ip6_address} \ +| | ... | \| ${dut2_dut1_ip4_address} \| ${dut2_tg_ip6_address} \ +| | ... | \| ${prefix4} \| ${prefix6} \| +| | ... +| | [Arguments] | ${dut1_dut2_ip4_address} | ${dut1_tg_ip6_address} +| | ... | ${dut2_dut1_ip4_address} | ${dut2_tg_ip6_address} +| | ... | ${prefix4} | ${prefix6} +| | 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 +| | ${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} +| | ${dut2_if1_mac}= | Get Interface MAC | ${dut2} | ${dut2_if1} +| | VPP Set If IPv6 Addr | ${dut1} | ${dut1_if1} | ${dut1_tg_ip6_address} +| | ... | ${prefix6} +| | dut1_v4.set_ip | ${dut1_if2} | ${dut1_dut2_ip4_address} | ${prefix4} +| | dut2_v4.set_ip | ${dut2_if1} | ${dut2_dut1_ip4_address} | ${prefix4} +| | VPP Set If IPv6 Addr | ${dut2} | ${dut2_if2} | ${dut2_tg_ip6_address} +| | ... | ${prefix6} +| | Vpp nodes ra suppress link layer | ${nodes} +| | Add Ip Neighbor | ${dut1} | ${dut1_if1} | 2001:1::2 | ${tg1_if1_mac} +| | Add Ip Neighbor | ${dut2} | ${dut2_if2} | 2001:2::2 | ${tg1_if2_mac} +| | dut1_v4.set_arp | ${dut1_if2} | ${dut2_dut1_ip4_address} | ${dut2_if1_mac} +| | dut2_v4.set_arp | ${dut2_if1} | ${dut1_dut2_ip4_address} | ${dut1_if2_mac} + diff --git a/resources/test_data/lisp/performance/lisp_static_adjacency.py b/resources/test_data/lisp/performance/lisp_static_adjacency.py new file mode 100644 index 0000000000..11648b91a3 --- /dev/null +++ b/resources/test_data/lisp/performance/lisp_static_adjacency.py @@ -0,0 +1,124 @@ +# 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. + +"""Test variables for Lisp remote static mapping test suite.""" + +# Lisp default global value +locator_name = 'ls1' + +# Lisp default locator_set value +duts_locator_set = {'locator_name': locator_name, + 'priority': 1, + 'weight': 1} + +# IPv4 Lisp static mapping configuration +dut1_to_dut2_ip4 = '1.1.1.1' +dut2_to_dut1_ip4 = '1.1.1.2' +dut1_to_tg_ip4 = '10.10.10.1' +dut2_to_tg_ip4 = '20.20.20.1' +prefix4 = 24 +dut1_ip4_static_adjacency = {'vni': 0, + 'deid': '20.20.20.0', + 'seid': '10.10.10.0', + 'rloc': '1.1.1.2', + 'prefix': 24} +dut2_ip4_static_adjacency = {'vni': 0, + 'deid': '10.10.10.0', + 'seid': '20.20.20.0', + 'rloc': '1.1.1.1', + 'prefix': 24} +dut1_ip4_eid = {'locator_name': locator_name, + 'vni': 0, + 'eid': '10.10.10.0', + 'prefix': 24} +dut2_ip4_eid = {'locator_name': locator_name, + 'vni': 0, + 'eid': '20.20.20.0', + 'prefix': 24} + +# IPv6 Lisp static mapping configuration +dut1_to_dut2_ip6 = '2001:3::1' +dut2_to_dut1_ip6 = '2001:3::2' +dut1_to_tg_ip6 = '2001:1::1' +dut2_to_tg_ip6 = '2001:2::1' +prefix6 = 64 +dut1_ip6_static_adjacency = {'vni': 0, + 'deid': '2001:2::0', + 'seid': '2001:1::0', + 'rloc': '2001:3::2', + 'prefix': 64} +dut2_ip6_static_adjacency = {'vni': 0, + 'deid': '2001:1::0', + 'seid': '2001:2::0', + 'rloc': '2001:3::1', + 'prefix': 64} +dut1_ip6_eid = {'locator_name': locator_name, + 'vni': 0, + 'eid': '2001:1::0', + 'prefix': 64} +dut2_ip6_eid = {'locator_name': locator_name, + 'vni': 0, + 'eid': '2001:2::0', + 'prefix': 64} + +# IPv4 over IPv6 Lisp static mapping configuration +dut1_to_dut2_ip4o6 = '2001:3::1' +dut2_to_dut1_ip4o6 = '2001:3::2' +dut1_to_tg_ip4o6 = '10.10.10.1' +dut2_to_tg_ip4o6 = '20.20.20.1' +tg_prefix4o6 = 24 +dut_prefix4o6 = 64 +dut1_ip4o6_static_adjacency = {'vni': 0, + 'deid': '20.20.20.0', + 'seid': '10.10.10.0', + 'rloc': '2001:3::2', + 'prefix': 24} +dut2_ip4o6_static_adjacency = {'vni': 0, + 'deid': '10.10.10.0', + 'seid': '20.20.20.0', + 'rloc': '2001:3::1', + 'prefix': 24} +dut1_ip4o6_eid = {'locator_name': locator_name, + 'vni': 0, + 'eid': '10.10.10.0', + 'prefix': 24} +dut2_ip4o6_eid = {'locator_name': locator_name, + 'vni': 0, + 'eid': '20.20.20.0', + 'prefix': 24} + +# IPv6 over IPv4 Lisp static mapping configuration +dut1_to_dut2_ip6o4 = '1.1.1.1' +dut2_to_dut1_ip6o4 = '1.1.1.2' +dut1_to_tg_ip6o4 = '2001:1::1' +dut2_to_tg_ip6o4 = '2001:2::1' +tg_prefix6o4 = 64 +dut_prefix6o4 = 24 +dut1_ip6o4_static_adjacency = {'vni': 0, + 'deid': '2001:2::0', + 'seid': '2001:1::0', + 'rloc': '1.1.1.2', + 'prefix': 64} +dut2_ip6o4_static_adjacency = {'vni': 0, + 'deid': '2001:1::0', + 'seid': '2001:2::0', + 'rloc': '1.1.1.1', + 'prefix': 64} +dut1_ip6o4_eid = {'locator_name': locator_name, + 'vni': 0, + 'eid': '2001:1::0', + 'prefix': 64} +dut2_ip6o4_eid = {'locator_name': locator_name, + 'vni': 0, + 'eid': '2001:2::0', + 'prefix': 64} diff --git a/tests/perf/Long_Lisp_Intel-X520-DA2.robot b/tests/perf/Long_Lisp_Intel-X520-DA2.robot new file mode 100644 index 0000000000..2ff8a582ab --- /dev/null +++ b/tests/perf/Long_Lisp_Intel-X520-DA2.robot @@ -0,0 +1,2328 @@ +# 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/lisp/lisp_static_adjacency.robot +| Library | resources.libraries.python.IPv4Setup.Dut | ${nodes['DUT1']} +| ... | WITH NAME | dut1_v4 +| Library | resources.libraries.python.IPv4Setup.Dut | ${nodes['DUT2']} +| ... | WITH NAME | dut2_v4 +# import additional Lisp settings from resource file +| Variables | resources/test_data/lisp/performance/lisp_static_adjacency.py +| 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 +| ... | L3 | Intel-X520-DA2 +| Suite Teardown | 3-node Performance Suite Teardown +| Test Setup | Setup all DUTs before test +| Test Teardown | Run Keyword | Remove startup configuration of VPP from all DUTs +| Documentation | *RFC6830: Pkt throughput Lisp test cases* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology +| ... | with single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-LISP-IPv4-ICMPv4 on DUT1-DUT2, +| ... | Eth-IPv4-ICMPv4 on TG-DUTn for IPv4 routing over LISPoIPv4 tunnel; +| ... | Eth-IPv6-LISP-IPv6-ICMPv6 on DUT1-DUT2, Eth-IPv6-ICMPv6 on TG-DUTn for +| ... | IPv6 routing over LISPoIPv6 tunnel; Eth-IPv6-LISP-IPv4-ICMPv4 on +| ... | DUT1-DUT2, Eth-IPv4-ICMPv4 on TG-DUTn for IPv4 routing over LISPoIPv6 +| ... | tunnel; Eth-IPv4-LISP-IPv6-ICMPv6 on DUT1-DUT2, Eth-IPv6-ICMPv6 on +| ... | TG-DUTn for IPv6 routing over LISPoIPv4 tunnel. +| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4 (IPv6) +| ... | routing and static routes. LISPoIPv4 (oIPv6) tunnel is configured +| ... | between DUT1 and DUT2. DUT1 and DUT2 tested with 2p10GE NIC X520 Niantic +| ... | by Intel. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop +| ... | Rate) with zero packet loss tolerance or throughput PDR (Partial Drop +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage +| ... | of packets transmitted. NDR and PDR are discovered for different +| ... | Ethernet L2 frame sizes using either binary search or linear search +| ... | *[Ref] Applicable standard specifications:* RFC6830. + +*** Test Cases *** +| TC01: 64B NDR binary search - DUT IPv4 over LISPoIPv4 tunnel - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist \ +| | ... | filters config with 1 thread, 1 phy core, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 64 Byte frames using binary search start +| | ... | at 10GE linerate, step 100kpps. +| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | NDR | LISP_IPv4 | SKIP_PATCH +| | ${framesize}= | Set Variable | 64 +| | ${min_rate}= | Set Variable | 100000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_72B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC02: 64B PDR binary search - DUT IPv4 over LISPoIPv4 tunnel - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist \ +| | ... | filters config with 1 thread, 1 phy core, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 64 Byte frames using binary search start +| | ... | at 10GE linerate, step 100kpps, LT=0.5%. +| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | PDR | LISP_IPv4 +| | ${framesize}= | Set Variable | 64 +| | ${min_rate}= | Set Variable | 100000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_72B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC03: 1480B NDR binary search - DUT IPv4 over LISPoIPv4 tunnel - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist \ +| | ... | filters config with 1 thread, 1 phy core, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 1480 Byte frames using binary search start +| | ... | at 10GE linerate, step 10kpps. +| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | NDR | LISP_IPv4 | SKIP_PATCH +| | ${framesize}= | Set Variable | 1480 +| | ${min_rate}= | Set Variable | 10000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_1488B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC04: 1480B PDR binary search - DUT IPv4 over LISPoIPv4 tunnel - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist \ +| | ... | filters config with 1 thread, 1 phy core, 1 receive queue per NIC +| | ... | port. [Ver] Find PDR for 1480 Byte frames using binary search start +| | ... | at 10GE linerate, step 10kpps, LT=0.5%. +| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | PDR | LISP_IPv4 +| | ${framesize}= | Set Variable | 1480 +| | ${min_rate}= | Set Variable | 10000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_1488B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC05: 9000B NDR binary search - DUT IPv4 over LISPoIPv4 tunnel - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist \ +| | ... | filters config with 1 thread, 1 phy core, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start +| | ... | at 10GE linerate, step 5kpps. +| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | NDR | LISP_IPv4 | SKIP_PATCH +| | ${framesize}= | Set Variable | 9000 +| | ${min_rate}= | Set Variable | 5000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_9008B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC06: 9000B PDR binary search - DUT IPv4 over LISPoIPv4 tunnel - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist \ +| | ... | filters config with 1 thread, 1 phy core, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start +| | ... | at 10GE linerate, step 5kpps, LT=0.5%. +| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | PDR | LISP_IPv4 +| | ${framesize}= | Set Variable | 9000 +| | ${min_rate}= | Set Variable | 5000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_9008B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC07: 64B NDR binary search - DUT IPv4 over LISPoIPv4 tunnel - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist \ +| | ... | filters config with 2 threads, 2 phy cores, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 64 Byte frames using binary search start +| | ... | at 10GE linerate, step 100kpps. +| | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | NDR | LISP_IPv4 | SKIP_PATCH +| | ${framesize}= | Set Variable | 64 +| | ${min_rate}= | Set Variable | 100000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_72B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC08: 64B PDR binary search - DUT IPv4 over LISPoIPv4 tunnel - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist \ +| | ... | filters config with 2 threads, 2 phy cores, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 64 Byte frames using binary search start +| | ... | at 10GE linerate, step 100kpps, LT=0.5%. +| | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | PDR | LISP_IPv4 +| | ${framesize}= | Set Variable | 64 +| | ${min_rate}= | Set Variable | 100000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_72B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC09: 1480B NDR binary search - DUT IPv4 over LISPoIPv4 tunnel - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist \ +| | ... | filters config with 2 threads, 2 phy cores, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 1480 Byte frames using binary search start +| | ... | at 10GE linerate, step 10kpps. +| | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | NDR | LISP_IPv4 | SKIP_PATCH +| | ${framesize}= | Set Variable | 1480 +| | ${min_rate}= | Set Variable | 10000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_1488B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC10: 1480B PDR binary search - DUT IPv4 over LISPoIPv4 tunnel - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist \ +| | ... | filters config with 2 threads, 2 phy cores, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 1480 Byte frames using binary search start +| | ... | at 10GE linerate, step 10kpps, LT=0.5%. +| | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | PDR | LISP_IPv4 | SKIP_PATCH +| | ${framesize}= | Set Variable | 1480 +| | ${min_rate}= | Set Variable | 10000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_1488B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC11: 9000B NDR binary search - DUT IPv4 over LISPoIPv4 tunnel - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist \ +| | ... | filters config with 2 threads, 2 phy cores, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start +| | ... | at 10GE linerate, step 5kpps. +| | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | NDR | LISP_IPv4 | SKIP_PATCH +| | ${framesize}= | Set Variable | 9000 +| | ${min_rate}= | Set Variable | 5000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_9008B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC12: 9000B PDR binary search - DUT IPv4 over LISPoIPv4 tunnel - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist \ +| | ... | filters config with 2 threads, 2 phy cores, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start +| | ... | at 10GE linerate, step 5kpps, LT=0.5%. +| | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | PDR | LISP_IPv4 | SKIP_PATCH +| | ${framesize}= | Set Variable | 9000 +| | ${min_rate}= | Set Variable | 5000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_9008B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC13: 64B NDR binary search - DUT IPv4 over LISPoIPv4 tunnel - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist \ +| | ... | filters config with 4 threads, 4 phy cores, 2 receive queues per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 64 Byte frames using binary search start +| | ... | at 10GE linerate, step 100kpps. +| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | NDR | LISP_IPv4 | SKIP_PATCH +| | ${framesize}= | Set Variable | 64 +| | ${min_rate}= | Set Variable | 100000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_72B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | 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 Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC14: 64B PDR binary search - DUT IPv4 over LISPoIPv4 tunnel - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist \ +| | ... | filters config with 4 threads, 4 phy cores, 2 receive queues per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 64 Byte frames using binary search start +| | ... | at 10GE linerate, step 100kpps, LT=0.5%. +| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | PDR | LISP_IPv4 +| | ${framesize}= | Set Variable | 64 +| | ${min_rate}= | Set Variable | 100000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_72B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | 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 Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC15: 1480B NDR binary search - DUT IPv4 over LISPoIPv4 tunnel - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist \ +| | ... | filters config with 4 threads, 4 phy cores, 2 receive queues per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 1480 Byte frames using binary search start +| | ... | at 10GE linerate, step 10kpps. +| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | NDR | LISP_IPv4 | SKIP_PATCH +| | ${framesize}= | Set Variable | 1480 +| | ${min_rate}= | Set Variable | 10000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_1488B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | 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 Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC16: 1480B PDR binary search - DUT IPv4 over LISPoIPv4 tunnel - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist \ +| | ... | filters config with 4 threads, 4 phy cores, 2 receive queues per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 1480 Byte frames using binary search start +| | ... | at 10GE linerate, step 10kpps, LT=0.5%. +| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | PDR | LISP_IPv4 | SKIP_PATCH +| | ${framesize}= | Set Variable | 1480 +| | ${min_rate}= | Set Variable | 10000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_1488B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Add No Multi Seg to all DUTs +| | When Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC17: 9000B NDR binary search - DUT IPv4 over LISPoIPv4 tunnel - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist \ +| | ... | filters config with 4 threads, 4 phy cores, 2 receive queues per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start +| | ... | at 10GE linerate, step 5kpps. +| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | NDR | LISP_IPv4 | SKIP_PATCH +| | ${framesize}= | Set Variable | 9000 +| | ${min_rate}= | Set Variable | 5000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_9008B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC18: 9000B PDR binary search - DUT IPv4 over LISPoIPv4 tunnel - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist \ +| | ... | filters config with 4 threads, 4 phy cores, 2 receive queues per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start +| | ... | at 10GE linerate, step 5kpps, LT=0.5%. +| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | PDR | LISP_IPv4 | SKIP_PATCH +| | ${framesize}= | Set Variable | 9000 +| | ${min_rate}= | Set Variable | 5000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_9008B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC19: 78B NDR binary search - DUT IPv6 over LISPoIPv6 tunnel - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 1 thread, 1 phy core, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 78 Byte frames using binary search start +| | ... | at 10GE linerate, step 100kpps. +| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | NDR | LISP_IPv6 | SKIP_PATCH +| | ${framesize}= | Set Variable | 78 +| | ${min_rate}= | Set Variable | 100000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_86B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC20: 78B PDR binary search - DUT IPv6 over LISPoIPv6 tunnel - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 1 thread, 1 phy core, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 78 Byte frames using binary search start +| | ... | at 10GE linerate, step 100kpps, LT=0.5%. +| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | PDR | LISP_IPv6 +| | ${framesize}= | Set Variable | 78 +| | ${min_rate}= | Set Variable | 100000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_86B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC21: 1460B NDR binary search - DUT IPv6 over LISPoIPv6 tunnel - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 1 thread, 1 phy core, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 1460 Byte frames using binary search start +| | ... | at 10GE linerate, step 10kpps. +| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | NDR | LISP_IPv6 | SKIP_PATCH +| | ${framesize}= | Set Variable | 1460 +| | ${min_rate}= | Set Variable | 10000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_1488B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC22: 1460B PDR binary search - DUT IPv6 over LISPoIPv6 tunnel - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 1 thread, 1 phy core, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 1460 Byte frames using binary search start +| | ... | at 10GE linerate, step 10kpps, LT=0.5%. +| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | PDR | LISP_IPv6 +| | ${framesize}= | Set Variable | 1460 +| | ${min_rate}= | Set Variable | 10000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_1488B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC23: 9000B NDR binary search - DUT IPv6 over LISPoIPv6 tunnel - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 1 thread, 1 phy core, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start +| | ... | at 10GE linerate, step 5kpps. +| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | NDR | LISP_IPv6 | SKIP_PATCH +| | ${framesize}= | Set Variable | 9000 +| | ${min_rate}= | Set Variable | 5000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_9008B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC24: 9000B PDR binary search - DUT IPv6 over LISPoIPv6 tunnel - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 1 thread, 1 phy core, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start +| | ... | at 10GE linerate, step 5kpps, LT=0.5%. +| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | PDR | LISP_IPv6 +| | ${framesize}= | Set Variable | 9000 +| | ${min_rate}= | Set Variable | 5000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_9008B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC25: 78B NDR binary search - DUT IPv6 over LISPoIPv6 tunnel - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 2 threads, 2 phy cores, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 78 Byte frames using binary search start +| | ... | at 10GE linerate, step 100kpps. +| | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | NDR | LISP_IPv6 | SKIP_PATCH +| | ${framesize}= | Set Variable | 78 +| | ${min_rate}= | Set Variable | 100000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_86B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC26: 78B PDR binary search - DUT IPv6 over LISPoIPv6 tunnel - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 2 threads, 2 phy cores, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 78 Byte frames using binary search start +| | ... | at 10GE linerate, step 100kpps, LT=0.5%. +| | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | PDR | LISP_IPv6 +| | ${framesize}= | Set Variable | 78 +| | ${min_rate}= | Set Variable | 100000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_86B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC27: 1460B NDR binary search - DUT IPv6 over LISPoIPv6 tunnel - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 2 threads, 2 phy cores, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 1460 Byte frames using binary search start +| | ... | at 10GE linerate, step 10kpps. +| | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | NDR | LISP_IPv6 | SKIP_PATCH +| | ${framesize}= | Set Variable | 1460 +| | ${min_rate}= | Set Variable | 10000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_1488B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC28: 1460B PDR binary search - DUT IPv6 over LISPoIPv6 tunnel - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 2 threads, 2 phy cores, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 1460 Byte frames using binary search start +| | ... | at 10GE linerate, step 10kpps, LT=0.5%. +| | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | PDR | LISP_IPv6 | SKIP_PATCH +| | ${framesize}= | Set Variable | 1460 +| | ${min_rate}= | Set Variable | 10000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_1488B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC29: 9000B NDR binary search - DUT IPv6 over LISPoIPv6 tunnel - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 2 threads, 2 phy cores, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start +| | ... | at 10GE linerate, step 5kpps. +| | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | NDR | LISP_IPv6 | SKIP_PATCH +| | ${framesize}= | Set Variable | 9000 +| | ${min_rate}= | Set Variable | 5000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_9008B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC30: 9000B PDR binary search - DUT IPv6 over LISPoIPv6 tunnel - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 2 threads, 2 phy cores, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start +| | ... | at 10GE linerate, step 5kpps. +| | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | PDR | LISP_IPv6 | SKIP_PATCH +| | ${framesize}= | Set Variable | 9000 +| | ${min_rate}= | Set Variable | 5000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_9008B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC31: 78B NDR binary search - DUT IPv6 over LISPoIPv6 tunnel - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 4 threads, 4 phy cores, 2 receive queues per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 78 Byte frames using binary search start +| | ... | at 10GE linerate, step 100kpps. +| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | NDR | LISP_IPv6 | SKIP_PATCH +| | ${framesize}= | Set Variable | 78 +| | ${min_rate}= | Set Variable | 100000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_86B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | 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 Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC32: 78B PDR binary search - DUT IPv6 over LISPoIPv6 tunnel - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 4 threads, 4 phy cores, 2 receive queues per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 78 Byte frames using binary search start +| | ... | at 10GE linerate, step 100kpps, LT=0.5%. +| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | PDR | LISP_IPv6 +| | ${framesize}= | Set Variable | 78 +| | ${min_rate}= | Set Variable | 100000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_86B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | 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 Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC33: 1460B NDR binary search - DUT IPv6 over LISPoIPv6 tunnel - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 4 threads, 4 phy cores, 2 receive queues per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 1460 Byte frames using binary search start +| | ... | at 10GE linerate, step 100kpps. +| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | NDR | LISP_IPv6 | SKIP_PATCH +| | ${framesize}= | Set Variable | 1460 +| | ${min_rate}= | Set Variable | 10000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_1488B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | 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 Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC34: 1460B PDR binary search - DUT IPv6 over LISPoIPv6 tunnel - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 4 threads, 4 phy cores, 2 receive queues per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 1460 Byte frames using binary search start +| | ... | at 10GE linerate, step 10kpps, LT=0.5%. +| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | PDR | LISP_IPv6 | SKIP_PATCH +| | ${framesize}= | Set Variable | 1460 +| | ${min_rate}= | Set Variable | 10000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_1488B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | 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 Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC35: 9000B NDR binary search - DUT IPv6 over LISPoIPv6 tunnel - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 4 threads, 4 phy cores, 2 receive queues per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start +| | ... | at 10GE linerate, step 5kpps. +| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | NDR | LISP_IPv6 | SKIP_PATCH +| | ${framesize}= | Set Variable | 9000 +| | ${min_rate}= | Set Variable | 5000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_9008B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC36: 9000B PDR binary search - DUT IPv6 over LISPoIPv6 tunnel - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 4 threads, 4 phy cores, 2 receive queues per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start +| | ... | at 10GE linerate, step 5kpps, LT=0.5%. +| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | PDR | LISP_IPv6 | SKIP_PATCH +| | ${framesize}= | Set Variable | 9000 +| | ${min_rate}= | Set Variable | 5000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_linerate_pps_9008B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC37: 64B NDR binary search - DUT IPv4 over LISPoIPv6 tunnel - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 1 thread, 1 phy core, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 64 Byte frames using binary search start +| | ... | at 10GE linerate, step 100kpps. +| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | NDR | LISP_IPv4oIPv6 | SKIP_PATCH +| | ${framesize}= | Set Variable | 64 +| | ${min_rate}= | Set Variable | 100000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_112B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC38: 64B PDR binary search - DUT IPv4 over LISPoIPv6 tunnel - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 1 thread, 1 phy core, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 64 Byte frames using binary search start +| | ... | at 10GE linerate, step 100kpps, LT=0.5%. +| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | PDR | LISP_IPv4oIPv6 +| | ${framesize}= | Set Variable | 64 +| | ${min_rate}= | Set Variable | 100000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_112B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC39: 1460B NDR binary search - DUT IPv4 over LISPoIPv6 tunnel - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 1 thread, 1 phy core, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 1460 Byte frames using binary search start +| | ... | at 10GE linerate, step 100kpps. +| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | NDR | LISP_IPv4oIPv6 | SKIP_PATCH +| | ${framesize}= | Set Variable | 1460 +| | ${min_rate}= | Set Variable | 10000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_1508B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC40: 1460B PDR binary search - DUT IPv4 over LISPoIPv6 tunnel - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 1 thread, 1 phy core, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 1460 Byte frames using binary search start +| | ... | at 10GE linerate, step 10kpps, LT=0.5%. +| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | PDR | LISP_IPv4oIPv6 +| | ${framesize}= | Set Variable | 1460 +| | ${min_rate}= | Set Variable | 10000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_1508B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC41: 9000B NDR binary search - DUT IPv4 over LISPoIPv6 tunnel - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 1 thread, 1 phy core, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start +| | ... | at 10GE linerate, step 5kpps. +| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | NDR | LISP_IPv4oIPv6 | SKIP_PATCH +| | ${framesize}= | Set Variable | 9000 +| | ${min_rate}= | Set Variable | 5000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_9048B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC42: 9000B PDR binary search - DUT IPv4 over LISPoIPv6 tunnel - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 1 thread, 1 phy core, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start +| | ... | at 10GE linerate, step 5kpps, LT=0.5%. +| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | PDR | LISP_IPv4oIPv6 +| | ${framesize}= | Set Variable | 9000 +| | ${min_rate}= | Set Variable | 5000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_9048B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC43: 64B NDR binary search - DUT IPv4 over LISPoIPv6 tunnel - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 2 threads, 2 phy cores, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 64 Byte frames using binary search start +| | ... | at 10GE linerate, step 100kpps. +| | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | NDR | LISP_IPv4oIPv6 | SKIP_PATCH +| | ${framesize}= | Set Variable | 64 +| | ${min_rate}= | Set Variable | 100000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_112B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC44: 64B PDR binary search - DUT IPv4 over LISPoIPv6 tunnel - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 2 threads, 2 phy cores, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 64 Byte frames using binary search start +| | ... | at 10GE linerate, step 100kpps. +| | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | PDR | LISP_IPv4oIPv6 +| | ${framesize}= | Set Variable | 64 +| | ${min_rate}= | Set Variable | 100000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_112B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC45: 1460B NDR binary search - DUT IPv4 over LISPoIPv6 tunnel - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 2 threads, 2 phy cores, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 1460 Byte frames using binary search start +| | ... | at 10GE linerate, step 10kpps. +| | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | NDR | LISP_IPv4oIPv6 | SKIP_PATCH +| | ${framesize}= | Set Variable | 1460 +| | ${min_rate}= | Set Variable | 10000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_1508B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC46: 1460B PDR binary search - DUT IPv4 over LISPoIPv6 tunnel - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 2 threads, 2 phy cores, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 1460 Byte frames using binary search start +| | ... | at 10GE linerate, step 10kpps, LT=0.5%. +| | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | PDR | LISP_IPv4oIPv6 | SKIP_PATCH +| | ${framesize}= | Set Variable | 1460 +| | ${min_rate}= | Set Variable | 10000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_1508B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC47: 9000B NDR binary search - DUT IPv4 over LISPoIPv6 tunnel - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 2 threads, 2 phy cores, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start +| | ... | at 10GE linerate, step 5kpps. +| | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | NDR | LISP_IPv4oIPv6 | SKIP_PATCH +| | ${framesize}= | Set Variable | 9000 +| | ${min_rate}= | Set Variable | 5000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_9048B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC48: 9000B PDR binary search - DUT IPv4 over LISPoIPv6 tunnel - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 2 threads, 2 phy cores, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start +| | ... | at 10GE linerate, step 5kpps, LT=0.5%. +| | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | PDR | LISP_IPv4oIPv6 | SKIP_PATCH +| | ${framesize}= | Set Variable | 9000 +| | ${min_rate}= | Set Variable | 5000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_9048B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC49: 64B NDR binary search - DUT IPv4 over LISPoIPv6 tunnel - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 4 threads, 4 phy cores, 2 receive queues per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 64 Byte frames using binary search start +| | ... | at 10GE linerate, step 100kpps. +| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | NDR | LISP_IPv4oIPv6 | SKIP_PATCH +| | ${framesize}= | Set Variable | 64 +| | ${min_rate}= | Set Variable | 100000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_112B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | 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 Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC50: 64B PDR binary search - DUT IPv4 over LISPoIPv6 tunnel - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 4 threads, 4 phy cores, 2 receive queues per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 64 Byte frames using binary search start +| | ... | at 10GE linerate, step 100kpps, LT=0.5%. +| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | PDR | LISP_IPv4oIPv6 +| | ${framesize}= | Set Variable | 64 +| | ${min_rate}= | Set Variable | 100000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_112B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | 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 Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC51: 1460B NDR binary search - DUT IPv4 over LISPoIPv6 tunnel - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 4 threads, 4 phy cores, 2 receive queues per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 1460 Byte frames using binary search start +| | ... | at 10GE linerate, step 10kpps. +| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | NDR | LISP_IPv4oIPv6 | SKIP_PATCH +| | ${framesize}= | Set Variable | 1460 +| | ${min_rate}= | Set Variable | 10000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_1508B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | 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 Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC52: 1460B PDR binary search - DUT IPv4 over LISPoIPv6 tunnel - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 4 threads, 4 phy cores, 2 receive queues per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 1460 Byte frames using binary search starlt +| | ... | at 10GE linerate, step 10kpps, LT=0.5%. +| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | PDR | LISP_IPv4oIPv6 | SKIP_PATCH +| | ${framesize}= | Set Variable | 1460 +| | ${min_rate}= | Set Variable | 10000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_1508B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Add No Multi Seg to all DUTs +| | When Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC53: 9000B NDR binary search - DUT IPv4 over LISPoIPv6 tunnel - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 4 threads, 4 phy cores, 2 receive queues per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start +| | ... | at 10GE linerate, step 5kpps. +| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | NDR | LISP_IPv4oIPv6 | SKIP_PATCH +| | ${framesize}= | Set Variable | 9000 +| | ${min_rate}= | Set Variable | 5000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_9048B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC54: 9000B PDR binary search - DUT IPv4 over LISPoIPv6 tunnel - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 4 threads, 4 phy cores, 2 receive queues per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start +| | ... | at 10GE linerate, step 5kpps, LT=0.5%. +| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | PDR | LISP_IPv4oIPv6 | SKIP_PATCH +| | ${framesize}= | Set Variable | 9000 +| | ${min_rate}= | Set Variable | 5000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_9048B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv4 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC55: 78B NDR binary search - DUT IPv6 over LISPoIPv4 tunnel - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 1 thread, 1 phy core, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 78 Byte frames using binary search start +| | ... | at 10GE linerate, step 100kpps. +| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | NDR | LISP_IPv6oIPv4 | SKIP_PATCH +| | ${framesize}= | Set Variable | 78 +| | ${min_rate}= | Set Variable | 100000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_126B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC56: 78B PDR binary search - DUT IPv6 over LISPoIPv4 tunnel - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 1 thread, 1 phy core, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 78 Byte frames using binary search start +| | ... | at 10GE linerate, step 100kpps, LT=0.5%. +| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | PDR | LISP_IPv6IPv4 +| | ${framesize}= | Set Variable | 78 +| | ${min_rate}= | Set Variable | 100000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_126B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC57: 1460B NDR binary search - DUT IPv6 over LISPoIPv4 tunnel - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 1 thread, 1 phy core, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 1460 Byte frames using binary search start +| | ... | at 10GE linerate, step 10kpps. +| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | NDR | LISP_IPv6oIPv4 | SKIP_PATCH +| | ${framesize}= | Set Variable | 1460 +| | ${min_rate}= | Set Variable | 10000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_1508B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC58: 1460B PDR binary search - DUT IPv6 over LISPoIPv4 tunnel - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 1 thread, 1 phy core, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 1460 Byte frames using binary search start +| | ... | at 10GE linerate, step 10kpps, LT=0.5%. +| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | PDR | LISP_IPv6oIPv4 +| | ${framesize}= | Set Variable | 1460 +| | ${min_rate}= | Set Variable | 10000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_1508B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC59: 9000B NDR binary search - DUT IPv6 over LISPoIPv4 tunnel - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 1 thread, 1 phy core, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start +| | ... | at 10GE linerate, step 5kpps. +| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | NDR | LISP_IPv6oIPv4 | SKIP_PATCH +| | ${framesize}= | Set Variable | 9000 +| | ${min_rate}= | Set Variable | 5000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_9048B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC60: 9000B PDR binary search - DUT IPv6 over LISPoIPv4 tunnel - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 1 thread, 1 phy core, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start +| | ... | at 10GE linerate, step 5kpps, LT=0.5%. +| | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | PDR | LISP_IPv6oIPv4 +| | ${framesize}= | Set Variable | 9000 +| | ${min_rate}= | Set Variable | 5000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_9048B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC61: 78B NDR binary search - DUT IPv6 over LISPoIPv4 tunnel - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 2 threads, 2 phy cores, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 78 Byte frames using binary search start +| | ... | at 10GE linerate, step 100kpps. +| | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | NDR | LISP_IPv6oIPv4 | SKIP_PATCH +| | ${framesize}= | Set Variable | 78 +| | ${min_rate}= | Set Variable | 100000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_126B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC62: 78B PDR binary search - DUT IPv6 over LISPoIPv4 tunnel - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 2 threads, 2 phy cores, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 78 Byte frames using binary search start +| | ... | at 10GE linerate, step 100kpps, LT=0.5%. +| | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | PDR | LISP_IPv6oIPv4 +| | ${framesize}= | Set Variable | 78 +| | ${min_rate}= | Set Variable | 100000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_126B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC63: 1460B NDR binary search - DUT IPv6 over LISPoIPv4 tunnel - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 2 threads, 2 phy cores, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 1460 Byte frames using binary search start +| | ... | at 10GE linerate, step 10kpps. +| | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | NDR | LISP_IPv6oIPv4 | SKIP_PATCH +| | ${framesize}= | Set Variable | 1460 +| | ${min_rate}= | Set Variable | 10000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_1508B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC64: 1460B PDR binary search - DUT IPv6 over LISPoIPv4 tunnel - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 2 threads, 2 phy cores, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 1460 Byte frames using binary search start +| | ... | at 10GE linerate, step 10kpps, LT=0.5%. +| | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | PDR | LISP_IPv6oIPv4 | SKIP_PATCH +| | ${framesize}= | Set Variable | 1460 +| | ${min_rate}= | Set Variable | 10000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_1508B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC65: 9000B NDR binary search - DUT IPv6 over LISPoIPv4 tunnel - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 2 threads, 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] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | NDR | LISP_IPv6oIPv4 | SKIP_PATCH +| | ${framesize}= | Set Variable | 9000 +| | ${min_rate}= | Set Variable | 5000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_9048B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC66: 9000B PDR binary search - DUT IPv6 over LISPoIPv4 tunnel - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 2 threads, 2 phy cores, 1 receive queue per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start +| | ... | at 10GE linerate, step 5kpps, LT=0.5%. +| | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | PDR | LISP_IPv6oIPv4 | SKIP_PATCH +| | ${framesize}= | Set Variable | 9000 +| | ${min_rate}= | Set Variable | 5000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_9048B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC67: 78B NDR binary search - DUT IPv6 over LISPoIPv4 tunnel - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 4 threads, 4 phy cores, 2 receive queues per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 78 Byte frames using binary search start +| | ... | at 10GE linerate, step 100kpps. +| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | NDR | LISP_IPv6oIPv4 | SKIP_PATCH +| | ${framesize}= | Set Variable | 78 +| | ${min_rate}= | Set Variable | 100000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_126B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | 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 Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC68: 78B PDR binary search - DUT IPv6 over LISPoIPv4 tunnel - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 4 threads, 4 phy cores, 2 receive queues per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 78 Byte frames using binary search start +| | ... | at 10GE linerate, step 100kpps, LT=0.5%. +| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | PDR | LISP_IPv6oIPv4 +| | ${framesize}= | Set Variable | 78 +| | ${min_rate}= | Set Variable | 100000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_126B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | 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 Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC69: 1460B NDR binary search - DUT IPv6 over LISPoIPv4 tunnel - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 4 threads, 4 phy cores, 2 receive queues per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 1460 Byte frames using binary search start +| | ... | at 10GE linerate, step 10kpps. +| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | NDR | LISP_IPv6oIPv4 | SKIP_PATCH +| | ${framesize}= | Set Variable | 1460 +| | ${min_rate}= | Set Variable | 10000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_1508B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | 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 Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC70: 1460B PDR binary search - DUT IPv6 over LISPoIPv4 tunnel - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 4 threads, 4 phy cores, 2 receive queues per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 1460 Byte frames using binary search start +| | ... | at 10GE linerate, step 10kpps, LT=0.5%. +| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | PDR | LISP_IPv6oIPv4 | SKIP_PATCH +| | ${framesize}= | Set Variable | 1460 +| | ${min_rate}= | Set Variable | 10000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_1508B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | 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 Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} + +| TC71: 9000B NDR binary search - DUT IPv6 over LISPoIPv4 tunnel - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 4 threads, 4 phy cores, 2 receive queues per NIC +| | ... | port. +| | ... | [Ver] Find NDR for 9000 Byte frames using binary search start +| | ... | at 10GE linerate, step 5kpps. +| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | NDR | LISP_IPv6oIPv4 | SKIP_PATCH +| | ${framesize}= | Set Variable | 9000 +| | ${min_rate}= | Set Variable | 5000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_9048B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Find NDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} + +| TC72: 9000B PDR binary search - DUT IPv6 over LISPoIPv4 tunnel - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config with 4 threads, 4 phy cores, 2 receive queues per NIC +| | ... | port. +| | ... | [Ver] Find PDR for 9000 Byte frames using binary search start +| | ... | at 10GE linerate, step 5kpps, LT=0.5%. +| | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | PDR | LISP_IPv6oIPv4 | SKIP_PATCH +| | ${framesize}= | Set Variable | 9000 +| | ${min_rate}= | Set Variable | 5000 +| | ${max_rate}= | Set Variable | ${10Ge_lisp_iph_linerate_pps_9048B} +| | ${binary_min}= | Set Variable | ${min_rate} +| | ${binary_max}= | Set Variable | ${max_rate} +| | ${threshold}= | Set Variable | ${min_rate} +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Find PDR using binary search and pps | ${framesize} | ${binary_min} +| | ... | ${binary_max} | 3-node-IPv6 +| | ... | ${min_rate} | ${max_rate} +| | ... | ${threshold} +| | ... | ${glob_loss_acceptance} +| | ... | ${glob_loss_acceptance_type} diff --git a/tests/perf/Short_Lisp_Intel-X520-DA2.robot b/tests/perf/Short_Lisp_Intel-X520-DA2.robot new file mode 100644 index 0000000000..6ecfe59ddc --- /dev/null +++ b/tests/perf/Short_Lisp_Intel-X520-DA2.robot @@ -0,0 +1,943 @@ +# 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/lisp/lisp_static_adjacency.robot +| Library | resources.libraries.python.IPv4Setup.Dut | ${nodes['DUT1']} +| ... | WITH NAME | dut1_v4 +| Library | resources.libraries.python.IPv4Setup.Dut | ${nodes['DUT2']} +| ... | WITH NAME | dut2_v4 +# import additional Lisp settings from resource file +| Variables | resources/test_data/lisp/performance/lisp_static_adjacency.py +| 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 +| ... | L3 | Intel-X520-DA2 +| Suite Teardown | 3-node Performance Suite Teardown +| Test Setup | Setup all DUTs before test +| Test Teardown | Run Keyword | Remove startup configuration of VPP from all DUTs +| Documentation | *Reference NDR throughput Lisp tunnel verify test cases* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology +| ... | with single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-LISP-IPv4-ICMPv4 on DUT1-DUT2, +| ... | Eth-IPv4-ICMPv4 on TG-DUTn for IPv4 routing over LISPoIPv4 tunnel; +| ... | Eth-IPv6-LISP-IPv6-ICMPv6 on DUT1-DUT2, Eth-IPv6-ICMPv6 on TG-DUTn for +| ... | IPv6 routing over LISPoIPv6 tunnel; Eth-IPv6-LISP-IPv4-ICMPv4 on +| ... | DUT1-DUT2, Eth-IPv4-ICMPv4 on TG-DUTn for IPv4 routing over LISPoIPv6 +| ... | tunnel; Eth-IPv4-LISP-IPv6-ICMPv6 on DUT1-DUT2, Eth-IPv6-ICMPv6 on +| ... | TG-DUTn for IPv6 routing over LISPoIPv4 tunnel. +| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4 (IPv6) +| ... | routing and static routes. LISPoIPv4 (oIPv6) tunnel is configured +| ... | between DUT1 and DUT2. DUT1 and DUT2 tested with 2p10GE NIC X520 Niantic +| ... | by Intel. +| ... | *[Ver] TG verification:* In short performance tests, TG verifies +| ... | DUTs' throughput at ref-NDR (reference Non Drop Rate) with zero packet +| ... | loss tolerance. Ref-NDR value is periodically updated acording to +| ... | formula: ref-NDR = 0.9x NDR, where NDR is found in RFC2544 long +| ... | performance tests for the same DUT confiiguration. Test packets are +| ... | generated by TG on links to DUTs. TG traffic profile contains two L3 +| ... | flow-groups (flow-group per direction, 253 flows per flow-group) with +| ... | all packets containing Ethernet header, IPv4 header or IPv6 header with +| ... | IP protocol=61 and generated payload. +| ... | *[Ref] Applicable standard specifications:* RFC2544. + +*** Test Cases *** +| TC01: Verify 64B ref-NDR at 2x 1.9Mpps - DUT IPv4 - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel 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_RSS_1 | SINGLE_THREAD | NDR | LISP_IPv4 +| | ${framesize}= | Set Variable | 64 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 1.9mpps +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv4 + +| TC02: Verify 1480B ref-NDR at 2x 740kpps - DUT IPv4 - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel config with 1 thread, 1 phy core, \ +| | ... | 1 receive queue per NIC port. +| | ... | [Ver] Verify ref-NDR for 1480 Byte frames using single trial +| | ... | throughput test. +| | [Tags] | 1_THREAD_NOHTT_RSS_1 | SINGLE_THREAD | NDR | LISP_IPv4 +| | ${framesize}= | Set Variable | 1480 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 740000pps +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv4 + +| TC03: Verify 9000B ref-NDR at 2x 120kpps - DUT IPv4 - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel 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_RSS_1 | SINGLE_THREAD | NDR | LISP_IPv4 +| | ${framesize}= | Set Variable | 9000 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 120000pps +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv4 + +| TC04: Verify 64B ref-NDR at 2x 3.6Mpps - DUT IPv4 - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel 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_RSS_1 | MULTI_THREAD | NDR | LISP_IPv4 +| | ${framesize}= | Set Variable | 64 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 3.6mpps +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv4 + +| TC05: Verify 1480B ref-NDR at 2x 740kpps - DUT IPv4 - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel config with 2 threads, 2 phy cores, \ +| | ... | 1 receive queue per NIC port. +| | ... | [Ver] Verify ref-NDR for 1480 Byte frames using single trial +| | ... | throughput test. +| | [Tags] | 2_THREAD_NOHTT_RSS_1 | MULTI_THREAD | NDR | LISP_IPv4 +| | ${framesize}= | Set Variable | 1480 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 740000pps +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv4 + +| TC06: Verify 9000B ref-NDR at 2x 120kpps - DUT IPv4 - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel 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_RSS_1 | MULTI_THREAD | NDR | LISP_IPv4 +| | ${framesize}= | Set Variable | 9000 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 120000pps +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv4 + +| TC07: Verify 64B ref-NDR at 2x 3.5Mpps - DUT IPv4 - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel config with 4 threads, 4 phy cores, \ +| | ... | 2 receive queues per NIC port. +| | ... | [Ver] Verify ref-NDR for 64 Byte frames using single trial +| | ... | throughput test. +| | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD | NDR | LISP_IPv4 +| | ${framesize}= | Set Variable | 64 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 3.5mpps +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | 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 Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv4 + +| TC08: Verify 1480B ref-NDR at 2x 740kpps - DUT IPv4 - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel config with 4 threads, 4 phy cores, \ +| | ... | 2 receive queues per NIC port. +| | ... | [Ver] Verify ref-NDR for 1480 Byte frames using single trial +| | ... | throughput test. +| | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD | NDR | LISP_IPv4 +| | ${framesize}= | Set Variable | 1480 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 740000pps +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | 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 Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv4 + +| TC09: Verify 9000B ref-NDR at 2x 120kpps - DUT IPv4 - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel config with 4 threads, 4 phy cores, \ +| | ... | 2 receive queues per NIC port. +| | ... | [Ver] Verify ref-NDR for 9000 Byte frames using single trial +| | ... | throughput test. +| | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD | NDR | LISP_IPv4 +| | ${framesize}= | Set Variable | 9000 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 120000pps +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4} | ${dut1_to_tg_ip4} | ${dut2_to_dut1_ip4} +| | ... | ${dut2_to_tg_ip4} | ${prefix4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4_eid} | ${dut2_ip4_eid} +| | ... | ${dut1_ip4_static_adjacency} | ${dut2_ip4_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv4 + +| TC10: Verify 78B ref-NDR at 2x 1.56Mpps - DUT IPv6 - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel config with 1 thread, 1 phy core, \ +| | ... | 1 receive queue per NIC port. +| | ... | [Ver] Verify ref-NDR for 78 Byte frames using single trial +| | ... | throughput test. +| | [Tags] | 1_THREAD_NOHTT_RSS_1 | SINGLE_THREAD | NDR | LISP_IPv6 +| | ${framesize}= | Set Variable | 78 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 1.56mpps +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv6 + +| TC11: Verify 1460B ref-NDR at 2x 740kpps - DUT IPv6 - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel config with 1 thread, 1 phy core, \ +| | ... | 1 receive queue per NIC port. +| | ... | [Ver] Verify ref-NDR for 1460 Byte frames using single trial +| | ... | throughput test. +| | [Tags] | 1_THREAD_NOHTT_RSS_1 | SINGLE_THREAD | NDR | LISP_IPv6 +| | ${framesize}= | Set Variable | 1460 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 740000pps +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv6 + +| TC12: Verify 9000B ref-NDR at 2x 120kpps - DUT IPv6 - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel 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_RSS_1 | SINGLE_THREAD | NDR | LISP_IPv6 +| | ${framesize}= | Set Variable | 9000 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 120000pps +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv6 + +| TC13: Verify 78B ref-NDR at 2x 3.2Mpps - DUT IPv6 - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel config with 2 thread, 2 phy core, \ +| | ... | 1 receive queue per NIC port. +| | ... | [Ver] Verify ref-NDR for 78 Byte frames using single trial +| | ... | throughput test. +| | [Tags] | 2_THREAD_NOHTT_RSS_1 | MULTI_THREAD | NDR | LISP_IPv6 +| | ${framesize}= | Set Variable | 78 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 3.2mpps +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv6 + +| TC14: Verify 1460B ref-NDR at 2x 740kpps - DUT IPv6 - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel config with 2 threads, 2 phy cores, \ +| | ... | 1 receive queue per NIC port. +| | ... | [Ver] Verify ref-NDR for 1460 Byte frames using single trial +| | ... | throughput test. +| | [Tags] | 2_THREAD_NOHTT_RSS_1 | MULTI_THREAD | NDR | LISP_IPv6 +| | ${framesize}= | Set Variable | 1460 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 740000pps +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv6 + +| TC15: Verify 9000B ref-NDR at 2x 120kpps - DUT IPv6 - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel 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_RSS_1 | MULTI_THREAD | NDR | LISP_IPv6 +| | ${framesize}= | Set Variable | 9000 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 120000pps +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv6 + +| TC16: Verify 78B ref-NDR at 2x 3.2Mpps - DUT IPv6 - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel config with 4 threads, 4 phy cores, \ +| | ... | 2 receive queues per NIC port. +| | ... | [Ver] Verify ref-NDR for 78 Byte frames using single trial +| | ... | throughput test. +| | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD | NDR | LISP_IPv6 +| | ${framesize}= | Set Variable | 78 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 3.2mpps +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | 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 Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv6 + +| TC17: Verify 1460B ref-NDR at 2x 740kpps - DUT IPv6 - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel config with 4 threads, 4 phy cores, \ +| | ... | 2 receive queues per NIC port. +| | ... | [Ver] Verify ref-NDR for 1460 Byte frames using single trial +| | ... | throughput test. +| | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD | NDR | LISP_IPv6 +| | ${framesize}= | Set Variable | 1460 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 740000pps +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | 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 Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv6 + +| TC18: Verify 9000B ref-NDR at 2x 120kpps - DUT IPv6 - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel config with 4 threads, 4 phy cores, \ +| | ... | 2 receive queues per NIC port. +| | ... | [Ver] Verify ref-NDR for 9000 Byte frames using single trial +| | ... | throughput test. +| | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD | NDR | LISP_IPv6 +| | ${framesize}= | Set Variable | 9000 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 120000pps +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6} | ${dut1_to_tg_ip6} | ${dut2_to_dut1_ip6} +| | ... | ${dut2_to_tg_ip6} | ${prefix6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6_eid} | ${dut2_ip6_eid} +| | ... | ${dut1_ip6_static_adjacency} | ${dut2_ip6_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv6 + +| TC19: Verify 64B ref-NDR at 2x 1.53Mpps - DUT IPv4oIPv6 - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel 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_RSS_1 | SINGLE_THREAD | NDR | LISP_IPv4oIPv6 +| | ${framesize}= | Set Variable | 64 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 1.53mpps +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv4 + +| TC20: Verify 1460B ref-NDR at 2x 720kpps - DUT IPv4oIPv6 - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel config with 1 thread, 1 phy core, \ +| | ... | 1 receive queue per NIC port. +| | ... | [Ver] Verify ref-NDR for 1460 Byte frames using single trial +| | ... | throughput test. +| | [Tags] | 1_THREAD_NOHTT_RSS_1 | SINGLE_THREAD | NDR | LISP_IPv4oIPv6 +| | ${framesize}= | Set Variable | 1460 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 720000pps +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv4 + +| TC21: Verify 9000B ref-NDR at 2x 120kpps - DUT IPv4oIPv6 - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel 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_RSS_1 | SINGLE_THREAD | NDR | LISP_IPv4oIPv6 +| | ${framesize}= | Set Variable | 9000 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 120000pps +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv4 + +| TC22: Verify 64B ref-NDR at 2x 3.25Mpps - DUT IPv4oIPv6 - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel 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_RSS_1 | MULTI_THREAD | NDR | LISP_IPv4oIPv6 +| | ${framesize}= | Set Variable | 64 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 3.25mpps +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv4 + +| TC23: Verify 1460B ref-NDR at 2x 720kpps - DUT IPv4oIPv6 - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel config with 2 threads, 2 phy cores, \ +| | ... | 1 receive queue per NIC port. +| | ... | [Ver] Verify ref-NDR for 1460 Byte frames using single trial +| | ... | throughput test. +| | [Tags] | 2_THREAD_NOHTT_RSS_1 | MULTI_THREAD | NDR | LISP_IPv4oIPv6 +| | ${framesize}= | Set Variable | 1460 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 720000pps +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv4 + +| TC24: Verify 9000B ref-NDR at 2x 120kpps - DUT IPv4oIPv6 - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel 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_RSS_1 | MULTI_THREAD | NDR | LISP_IPv4oIPv6 +| | ${framesize}= | Set Variable | 9000 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 120000pps +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv4 + +| TC25: Verify 64B ref-NDR at 2x 3.12Mpps - DUT IPv4oIPv6 - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel config with 4 threads, 4 phy cores, \ +| | ... | 2 receive queues per NIC port. +| | ... | [Ver] Verify ref-NDR for 64 Byte frames using single trial +| | ... | throughput test. +| | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD | NDR | LISP_IPv4oIPv6 +| | ${framesize}= | Set Variable | 64 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 3.12mpps +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | 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 Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv4 + +| TC26: Verify 1460B ref-NDR at 2x 720kpps - DUT IPv4oIPv6 - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel config with 4 threads, 4 phy cores, \ +| | ... | 2 receive queues per NIC port. +| | ... | [Ver] Verify ref-NDR for 1460 Byte frames using single trial +| | ... | throughput test. +| | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD | NDR | LISP_IPv4oIPv6 +| | ${framesize}= | Set Variable | 1460 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 720000pps +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | 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 Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv4 + +| TC27: Verify 9000B ref-NDR at 2x 120kpps - DUT IPv4oIPv6 - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel config with 4 threads, 4 phy cores, \ +| | ... | 2 receive queues per NIC port. +| | ... | [Ver] Verify ref-NDR for 9000 Byte frames using single trial +| | ... | throughput test. +| | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD | NDR | LISP_IPv4oIPv6 +| | ${framesize}= | Set Variable | 9000 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 120000pps +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv4 over IPv6 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip4o6} | ${dut1_to_tg_ip4o6} | ${dut2_to_dut1_ip4o6} +| | ... | ${dut2_to_tg_ip4o6} | ${tg_prefix4o6} | ${dut_prefix4o6} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip4o6_eid} | ${dut2_ip4o6_eid} +| | ... | ${dut1_ip4o6_static_adjacency} | ${dut2_ip4o6_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv4 + +| TC28: Verify 78B ref-NDR at 2x 1.75Mpps - DUT IPv6oIPv4 - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel config with 1 thread, 1 phy core, \ +| | ... | 1 receive queue per NIC port. +| | ... | [Ver] Verify ref-NDR for 78 Byte frames using single trial +| | ... | throughput test. +| | [Tags] | 1_THREAD_NOHTT_RSS_1 | SINGLE_THREAD | NDR | LISP_IPv6oIPv4 +| | ${framesize}= | Set Variable | 78 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 1.75mpps +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv6 + +| TC29: Verify 1460B ref-NDR at 2x 720kpps - DUT IPv6oIPv4 - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel config with 1 thread, 1 phy core, \ +| | ... | 1 receive queue per NIC port. +| | ... | [Ver] Verify ref-NDR for 1460 Byte frames using single trial +| | ... | throughput test. +| | [Tags] | 1_THREAD_NOHTT_RSS_1 | SINGLE_THREAD | NDR | LISP_IPv6oIPv4 +| | ${framesize}= | Set Variable | 1460 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 720000pps +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv6 + +| TC30: Verify 9000B ref-NDR at 2x 120kpps - DUT IPv6oIPv4 - 1thread 1core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel 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_RSS_1 | SINGLE_THREAD | NDR | LISP_IPv6oIPv4 +| | ${framesize}= | Set Variable | 9000 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 120000pps +| | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv6 + +| TC31: Verify 78B ref-NDR at 2x 3.42Mpps - DUT IPv6oIPv4 - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel config with 2 threads, 2 phy cores, \ +| | ... | 1 receive queue per NIC port. +| | ... | [Ver] Verify ref-NDR for 78 Byte frames using single trial +| | ... | throughput test. +| | [Tags] | 2_THREAD_NOHTT_RSS_1 | MULTI_THREAD | NDR | LISP_IPv6oIPv4 +| | ${framesize}= | Set Variable | 78 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 3.42mpps +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv6 + +| TC32: Verify 1460B ref-NDR at 2x 720kpps - DUT IPv6oIPv4 - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel config with 2 threads, 2 phy cores, \ +| | ... | 1 receive queue per NIC port. +| | ... | [Ver] Verify ref-NDR for 1460 Byte frames using single trial +| | ... | throughput test. +| | [Tags] | 2_THREAD_NOHTT_RSS_1 | MULTI_THREAD | NDR | LISP_IPv6oIPv4 +| | ${framesize}= | Set Variable | 1460 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 720000pps +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | 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 Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv6 + +| TC33: Verify 9000B ref-NDR at 2x 120kpps - DUT IPv6oIPv4 - 2thread 2core 1rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel 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_RSS_1 | MULTI_THREAD | NDR | LISP_IPv6oIPv4 +| | ${framesize}= | Set Variable | 9000 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 120000pps +| | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv6 + +| TC34: Verify 78B ref-NDR at 2x 3.42Mpps - DUT IPv6oIPv4 - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel config with 4 threads, 4 phy cores, \ +| | ... | 2 receive queues per NIC port. +| | ... | [Ver] Verify ref-NDR for 78 Byte frames using single trial +| | ... | throughput test. +| | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD | NDR | LISP_IPv6oIPv4 +| | ${framesize}= | Set Variable | 78 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 3.42mpps +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | 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 Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv6 + +| TC35: Verify 1460B ref-NDR at 2x 720Kpps - DUT IPv6oIPv4 - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel config with 4 threads, 4 phy cores, \ +| | ... | 2 receive queues per NIC port. +| | ... | [Ver] Verify ref-NDR for 1460 Byte frames using single trial +| | ... | throughput test. +| | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD | NDR | LISP_IPv6oIPv4 +| | ${framesize}= | Set Variable | 1460 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 720000pps +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | 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 Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv6 + +| TC36: Verify 9000B ref-NDR at 2x 120Kpps - DUT IPv6oIPv4 - 4thread 4core 2rxq +| | [Documentation] +| | ... | [Cfg] DUT runs LISP tunnel config with 4 threads, 4 phy cores, \ +| | ... | 2 receive queues per NIC port. +| | ... | [Ver] Verify ref-NDR for 9000 Byte frames using single trial +| | ... | throughput test. +| | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD | NDR | LISP_IPv6oIPv4 +| | ${framesize}= | Set Variable | 9000 +| | ${duration}= | Set Variable | 10 +| | ${rate}= | Set Variable | 120000pps +| | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs +| | And Add PCI devices to DUTs from 3-node single link topology +| | And Apply startup configuration on all VPP DUTs +| | When Lisp IPv6 over IPv4 forwarding initialized in a 3-node circular topology +| | ... | ${dut1_to_dut2_ip6o4} | ${dut1_to_tg_ip6o4} | ${dut2_to_dut1_ip6o4} +| | ... | ${dut2_to_tg_ip6o4} | ${tg_prefix6o4} | ${dut_prefix6o4} +| | And Set up Lisp topology +| | ... | ${dut1} | ${dut1_if2} | ${NONE} +| | ... | ${dut2} | ${dut2_if1} | ${NONE} +| | ... | ${duts_locator_set} | ${dut1_ip6o4_eid} | ${dut2_ip6o4_eid} +| | ... | ${dut1_ip6o4_static_adjacency} | ${dut2_ip6o4_static_adjacency} +| | Then Traffic should pass with no loss | ${duration} | ${rate} +| | ... | ${framesize} | 3-node-IPv6