b642cab81ae27fdd8a5133205c6a225a8b1bcc2c
[csit.git] / tests / perf / Long_IPv6_Cop_Intel-X520-DA2.robot
1 # Copyright (c) 2016 Cisco and/or its affiliates.
2 # Licensed under the Apache License, Version 2.0 (the "License");
3 # you may not use this file except in compliance with the License.
4 # You may obtain a copy of the License at:
5 #
6 #     http://www.apache.org/licenses/LICENSE-2.0
7 #
8 # Unless required by applicable law or agreed to in writing, software
9 # distributed under the License is distributed on an "AS IS" BASIS,
10 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 # See the License for the specific language governing permissions and
12 # limitations under the License.
13
14 *** Settings ***
15 | Resource | resources/libraries/robot/performance.robot
16 | Library | resources.libraries.python.Cop
17 | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | PERFTEST_LONG
18 | ...        | NIC_Intel-X520-DA2
19 | Suite Setup | 3-node Performance Suite Setup with DUT's NIC model
20 | ... | L3 | Intel-X520-DA2
21 | Suite Teardown | 3-node Performance Suite Teardown
22 | Test Setup | Setup all DUTs before test
23 | Test Teardown | Run Keywords
24 | ...           | Run Keyword If Test Failed
25 | ...           | Traffic should pass with no loss | 10
26 | ...           | ${min_rate}pps | ${framesize} | 3-node-IPv6
27 | ...           | fail_on_loss=${False}
28 | ...           | AND | Remove startup configuration of VPP from all DUTs
29 | ...           | AND | Show vpp trace dump on all DUTs
30 | Documentation | *RFC2544: Pkt throughput IPv6 whitelist test cases*
31 | ...
32 | ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
33 | ... | with single links between nodes.
34 | ... | *[Enc] Packet Encapsulations:* Eth-IPv6 for IPv6 routing.
35 | ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv6
36 | ... | routing, two static IPv6 /64 routes and IPv6 COP security whitelist
37 | ... | ingress /64 filter entries applied on links TG - DUT1 and DUT2 - TG.
38 | ... | DUT1 and DUT2 tested with 2p10GE NIC X520 Niantic by Intel.
39 | ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop
40 | ... | Rate) with zero packet loss tolerance or throughput PDR (Partial Drop
41 | ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage
42 | ... | of packets transmitted. NDR and PDR are discovered for different
43 | ... | Ethernet L2 frame sizes using either binary search or linear search
44 | ... | algorithms with configured starting rate and final step that determines
45 | ... | throughput measurement resolution. Test packets are generated by TG on
46 | ... | links to DUTs. TG traffic profile contains two L3 flow-groups
47 | ... | (flow-group per direction, 253 flows per flow-group) with all packets
48 | ... | containing Ethernet header, IPv6 header and static
49 | ... | payload. MAC addresses are matching MAC addresses of the TG node
50 | ... | interfaces.
51 | ... | *[Ref] Applicable standard specifications:* RFC2544.
52
53 *** Test Cases ***
54 | TC01: 78B NDR binary search - DUT IPv6 whitelist - 1thread 1core 1rxq
55 | | [Documentation]
56 | | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
57 | | ... | 1 thread, 1 phy core, 1 receive queue per NIC port. [Ver] Find NDR
58 | | ... | for 78 Byte frames using binary search start at 10GE linerate,
59 | | ... | step 100kpps.
60 | | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | NDR
61 | | ${framesize}= | Set Variable | 78
62 | | ${min_rate}= | Set Variable | 100000
63 | | ${max_rate}= | Set Variable | ${10Ge_linerate_pps_78B}
64 | | ${binary_min}= | Set Variable | ${min_rate}
65 | | ${binary_max}= | Set Variable | ${max_rate}
66 | | ${threshold}= | Set Variable | ${min_rate}
67 | | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs
68 | | And   Add PCI devices to DUTs from 3-node single link topology
69 | | And   Add No Multi Seg to all DUTs
70 | | And   Apply startup configuration on all VPP DUTs
71 | | When  IPv6 forwarding initialized in a 3-node circular topology
72 | | And   Add fib table | ${dut1} | 2001:1:: | 64 | 1 | local
73 | | And   Add fib table | ${dut2} | 2001:2:: | 64 | 1 | local
74 | | And   COP Add whitelist Entry | ${dut1} | ${dut1_if1} | ip6 | 1
75 | | And   COP Add whitelist Entry | ${dut2} | ${dut2_if2} | ip6 | 1
76 | | And   COP interface enable or disable | ${dut1} | ${dut1_if1} | enable
77 | | And   COP interface enable or disable | ${dut2} | ${dut2_if2} | enable
78 | | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
79 | | ...                                       | ${binary_max} | 3-node-IPv6
80 | | ...                                       | ${min_rate} | ${max_rate}
81 | | ...                                       | ${threshold}
82
83 | TC02: 78B PDR binary search - DUT IPv6 whitelist - 1thread 1core 1rxq
84 | | [Documentation]
85 | | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
86 | | ... | 1 thread, 1 phy core, 1 receive queue per NIC port. [Ver] Find PDR
87 | | ... | for 78 Byte frames using binary search start at 10GE linerate,
88 | | ... | step 100kpps, LT=0.5%.
89 | | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | PDR | SKIP_PATCH
90 | | ${framesize}= | Set Variable | 78
91 | | ${min_rate}= | Set Variable | 100000
92 | | ${max_rate}= | Set Variable | ${10Ge_linerate_pps_78B}
93 | | ${binary_min}= | Set Variable | ${min_rate}
94 | | ${binary_max}= | Set Variable | ${max_rate}
95 | | ${threshold}= | Set Variable | ${min_rate}
96 | | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs
97 | | And   Add PCI devices to DUTs from 3-node single link topology
98 | | And   Add No Multi Seg to all DUTs
99 | | And   Apply startup configuration on all VPP DUTs
100 | | When  IPv6 forwarding initialized in a 3-node circular topology
101 | | And   Add fib table | ${dut1} | 2001:1:: | 64 | 1 | local
102 | | And   Add fib table | ${dut2} | 2001:2:: | 64 | 1 | local
103 | | And   COP Add whitelist Entry | ${dut1} | ${dut1_if1} | ip6 | 1
104 | | And   COP Add whitelist Entry | ${dut2} | ${dut2_if2} | ip6 | 1
105 | | And   COP interface enable or disable | ${dut1} | ${dut1_if1} | enable
106 | | And   COP interface enable or disable | ${dut2} | ${dut2_if2} | enable
107 | | Then Find PDR using binary search and pps | ${framesize} | ${binary_min}
108 | | ...                                       | ${binary_max} | 3-node-IPv6
109 | | ...                                       | ${min_rate} | ${max_rate}
110 | | ...                                       | ${threshold}
111 | | ...                                       | ${glob_loss_acceptance}
112 | | ...                                       | ${glob_loss_acceptance_type}
113
114 | TC03: 1518B NDR binary search - DUT IPv6 whitelist - 1thread 1core 1rxq
115 | | [Documentation]
116 | | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
117 | | ... | 1 thread, 1 phy core, 1 receive queue per NIC port. [Ver] Find NDR
118 | | ... | for 1518 Byte frames using binary search start at 10GE linerate,
119 | | ... | step 10kpps.
120 | | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | NDR
121 | | ${framesize}= | Set Variable | 1518
122 | | ${min_rate}= | Set Variable | 10000
123 | | ${max_rate}= | Set Variable | ${10Ge_linerate_pps_1518B}
124 | | ${binary_min}= | Set Variable | ${min_rate}
125 | | ${binary_max}= | Set Variable | ${max_rate}
126 | | ${threshold}= | Set Variable | ${min_rate}
127 | | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs
128 | | And   Add PCI devices to DUTs from 3-node single link topology
129 | | And   Add No Multi Seg to all DUTs
130 | | And   Apply startup configuration on all VPP DUTs
131 | | When  IPv6 forwarding initialized in a 3-node circular topology
132 | | And   Add fib table | ${dut1} | 2001:1:: | 64 | 1 | local
133 | | And   Add fib table | ${dut2} | 2001:2:: | 64 | 1 | local
134 | | And   COP Add whitelist Entry | ${dut1} | ${dut1_if1} | ip6 | 1
135 | | And   COP Add whitelist Entry | ${dut2} | ${dut2_if2} | ip6 | 1
136 | | And   COP interface enable or disable | ${dut1} | ${dut1_if1} | enable
137 | | And   COP interface enable or disable | ${dut2} | ${dut2_if2} | enable
138 | | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
139 | | ...                                       | ${binary_max} | 3-node-IPv6
140 | | ...                                       | ${min_rate} | ${max_rate}
141 | | ...                                       | ${threshold}
142
143 | TC04: 1518B PDR binary search - DUT IPv6 whitelist - 1thread 1core 1rxq
144 | | [Documentation]
145 | | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
146 | | ... | 1 thread, 1 phy core, 1 receive queue per NIC port. [Ver] Find PDR
147 | | ... | for 1518 Byte frames using binary search start at 10GE linerate,
148 | | ... | step 10kpps, LT=0.5%.
149 | | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | PDR | SKIP_PATCH
150 | | ${framesize}= | Set Variable | 1518
151 | | ${min_rate}= | Set Variable | 10000
152 | | ${max_rate}= | Set Variable | ${10Ge_linerate_pps_1518B}
153 | | ${binary_min}= | Set Variable | ${min_rate}
154 | | ${binary_max}= | Set Variable | ${max_rate}
155 | | ${threshold}= | Set Variable | ${min_rate}
156 | | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs
157 | | And   Add PCI devices to DUTs from 3-node single link topology
158 | | And   Add No Multi Seg to all DUTs
159 | | And   Apply startup configuration on all VPP DUTs
160 | | When  IPv6 forwarding initialized in a 3-node circular topology
161 | | And   Add fib table | ${dut1} | 2001:1:: | 64 | 1 | local
162 | | And   Add fib table | ${dut2} | 2001:2:: | 64 | 1 | local
163 | | And   COP Add whitelist Entry | ${dut1} | ${dut1_if1} | ip6 | 1
164 | | And   COP Add whitelist Entry | ${dut2} | ${dut2_if2} | ip6 | 1
165 | | And   COP interface enable or disable | ${dut1} | ${dut1_if1} | enable
166 | | And   COP interface enable or disable | ${dut2} | ${dut2_if2} | enable
167 | | Then Find PDR using binary search and pps | ${framesize} | ${binary_min}
168 | | ...                                       | ${binary_max} | 3-node-IPv6
169 | | ...                                       | ${min_rate} | ${max_rate}
170 | | ...                                       | ${threshold}
171 | | ...                                       | ${glob_loss_acceptance}
172 | | ...                                       | ${glob_loss_acceptance_type}
173
174 | TC05: 9000B NDR binary search - DUT IPv6 whitelist - 1thread 1core 1rxq
175 | | [Documentation]
176 | | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
177 | | ... | 1 thread, 1 phy core, 1 receive queue per NIC port. [Ver] Find NDR
178 | | ... | for 9000 Byte frames using binary search start at 10GE linerate,
179 | | ... | step 5kpps.
180 | | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | NDR
181 | | ${framesize}= | Set Variable | 9000
182 | | ${min_rate}= | Set Variable | 5000
183 | | ${max_rate}= | Set Variable | ${10Ge_linerate_pps_9000B}
184 | | ${binary_min}= | Set Variable | ${min_rate}
185 | | ${binary_max}= | Set Variable | ${max_rate}
186 | | ${threshold}= | Set Variable | ${min_rate}
187 | | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs
188 | | And   Add PCI devices to DUTs from 3-node single link topology
189 | | And   Apply startup configuration on all VPP DUTs
190 | | When  IPv6 forwarding initialized in a 3-node circular topology
191 | | And   Add fib table | ${dut1} | 2001:1:: | 64 | 1 | local
192 | | And   Add fib table | ${dut2} | 2001:2:: | 64 | 1 | local
193 | | And   COP Add whitelist Entry | ${dut1} | ${dut1_if1} | ip6 | 1
194 | | And   COP Add whitelist Entry | ${dut2} | ${dut2_if2} | ip6 | 1
195 | | And   COP interface enable or disable | ${dut1} | ${dut1_if1} | enable
196 | | And   COP interface enable or disable | ${dut2} | ${dut2_if2} | enable
197 | | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
198 | | ...                                       | ${binary_max} | 3-node-IPv6
199 | | ...                                       | ${min_rate} | ${max_rate}
200 | | ...                                       | ${threshold}
201
202 | TC06: 9000B PDR binary search - DUT IPv6 whitelist - 1thread 1core 1rxq
203 | | [Documentation]
204 | | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
205 | | ... | 1 thread, 1 phy core, 1 receive queue per NIC port. [Ver] Find PDR
206 | | ... | for 9000 Byte frames using binary search start at 10GE linerate,
207 | | ... | step 5kpps, LT=0.5%.
208 | | [Tags] | 1_THREAD_NOHTT_RXQUEUES_1 | SINGLE_THREAD | PDR | SKIP_PATCH
209 | | ${framesize}= | Set Variable | 9000
210 | | ${min_rate}= | Set Variable | 5000
211 | | ${max_rate}= | Set Variable | ${10Ge_linerate_pps_9000B}
212 | | ${binary_min}= | Set Variable | ${min_rate}
213 | | ${binary_max}= | Set Variable | ${max_rate}
214 | | ${threshold}= | Set Variable | ${min_rate}
215 | | Given Add '1' worker threads and rxqueues '1' without HTT to all DUTs
216 | | And   Add PCI devices to DUTs from 3-node single link topology
217 | | And   Apply startup configuration on all VPP DUTs
218 | | When  IPv6 forwarding initialized in a 3-node circular topology
219 | | And   Add fib table | ${dut1} | 2001:1:: | 64 | 1 | local
220 | | And   Add fib table | ${dut2} | 2001:2:: | 64 | 1 | local
221 | | And   COP Add whitelist Entry | ${dut1} | ${dut1_if1} | ip6 | 1
222 | | And   COP Add whitelist Entry | ${dut2} | ${dut2_if2} | ip6 | 1
223 | | And   COP interface enable or disable | ${dut1} | ${dut1_if1} | enable
224 | | And   COP interface enable or disable | ${dut2} | ${dut2_if2} | enable
225 | | Then Find PDR using binary search and pps | ${framesize} | ${binary_min}
226 | | ...                                       | ${binary_max} | 3-node-IPv6
227 | | ...                                       | ${min_rate} | ${max_rate}
228 | | ...                                       | ${threshold}
229 | | ...                                       | ${glob_loss_acceptance}
230 | | ...                                       | ${glob_loss_acceptance_type}
231
232 | TC07: 78B NDR binary search - DUT IPv6 whitelist - 2threads 2cores 1rxq
233 | | [Documentation]
234 | | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
235 | | ... | 2 threads, 2 phy cores, 1 receive queue per NIC port. [Ver] Find NDR
236 | | ... | for 78 Byte frames using binary search start at 10GE linerate,
237 | | ... | step 100kpps.
238 | | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | NDR
239 | | ${framesize}= | Set Variable | 78
240 | | ${min_rate}= | Set Variable | 100000
241 | | ${max_rate}= | Set Variable | ${10Ge_linerate_pps_78B}
242 | | ${binary_min}= | Set Variable | ${min_rate}
243 | | ${binary_max}= | Set Variable | ${max_rate}
244 | | ${threshold}= | Set Variable | ${min_rate}
245 | | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs
246 | | And   Add PCI devices to DUTs from 3-node single link topology
247 | | And   Add No Multi Seg to all DUTs
248 | | And   Apply startup configuration on all VPP DUTs
249 | | When  IPv6 forwarding initialized in a 3-node circular topology
250 | | And   Add fib table | ${dut1} | 2001:1:: | 64 | 1 | local
251 | | And   Add fib table | ${dut2} | 2001:2:: | 64 | 1 | local
252 | | And   COP Add whitelist Entry | ${dut1} | ${dut1_if1} | ip6 | 1
253 | | And   COP Add whitelist Entry | ${dut2} | ${dut2_if2} | ip6 | 1
254 | | And   COP interface enable or disable | ${dut1} | ${dut1_if1} | enable
255 | | And   COP interface enable or disable | ${dut2} | ${dut2_if2} | enable
256 | | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
257 | | ...                                       | ${binary_max} | 3-node-IPv6
258 | | ...                                       | ${min_rate} | ${max_rate}
259 | | ...                                       | ${threshold}
260
261 | TC08: 78B PDR binary search - DUT IPv6 whitelist - 2threads 2cores 1rxq
262 | | [Documentation]
263 | | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
264 | | ... | 2 threads, 2 phy cores, 1 receive queue per NIC port. [Ver] Find PDR
265 | | ... | for 78 Byte frames using binary search start at 10GE linerate,
266 | | ... | step 100kpps, LT=0.5%.
267 | | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | PDR | SKIP_PATCH
268 | | ${framesize}= | Set Variable | 78
269 | | ${min_rate}= | Set Variable | 100000
270 | | ${max_rate}= | Set Variable | ${10Ge_linerate_pps_78B}
271 | | ${binary_min}= | Set Variable | ${min_rate}
272 | | ${binary_max}= | Set Variable | ${max_rate}
273 | | ${threshold}= | Set Variable | ${min_rate}
274 | | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs
275 | | And   Add PCI devices to DUTs from 3-node single link topology
276 | | And   Add No Multi Seg to all DUTs
277 | | And   Apply startup configuration on all VPP DUTs
278 | | When  IPv6 forwarding initialized in a 3-node circular topology
279 | | And   Add fib table | ${dut1} | 2001:1:: | 64 | 1 | local
280 | | And   Add fib table | ${dut2} | 2001:2:: | 64 | 1 | local
281 | | And   COP Add whitelist Entry | ${dut1} | ${dut1_if1} | ip6 | 1
282 | | And   COP Add whitelist Entry | ${dut2} | ${dut2_if2} | ip6 | 1
283 | | And   COP interface enable or disable | ${dut1} | ${dut1_if1} | enable
284 | | And   COP interface enable or disable | ${dut2} | ${dut2_if2} | enable
285 | | Then Find PDR using binary search and pps | ${framesize} | ${binary_min}
286 | | ...                                       | ${binary_max} | 3-node-IPv6
287 | | ...                                       | ${min_rate} | ${max_rate}
288 | | ...                                       | ${threshold}
289 | | ...                                       | ${glob_loss_acceptance}
290 | | ...                                       | ${glob_loss_acceptance_type}
291
292 | TC09: 1518B NDR binary search - DUT IPv6 whitelist - 2threads 2cores 1rxq
293 | | [Documentation]
294 | | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
295 | | ... | 2 threads, 2 phy cores, 1 receive queue per NIC port. [Ver] Find NDR
296 | | ... | for 1518 Byte frames using binary search start at 10GE linerate,
297 | | ... | step 10kpps.
298 | | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | NDR | SKIP_PATCH
299 | | ${framesize}= | Set Variable | 1518
300 | | ${min_rate}= | Set Variable | 10000
301 | | ${max_rate}= | Set Variable | ${10Ge_linerate_pps_1518B}
302 | | ${binary_min}= | Set Variable | ${min_rate}
303 | | ${binary_max}= | Set Variable | ${max_rate}
304 | | ${threshold}= | Set Variable | ${min_rate}
305 | | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs
306 | | And   Add PCI devices to DUTs from 3-node single link topology
307 | | And   Add No Multi Seg to all DUTs
308 | | And   Apply startup configuration on all VPP DUTs
309 | | When  IPv6 forwarding initialized in a 3-node circular topology
310 | | And   Add fib table | ${dut1} | 2001:1:: | 64 | 1 | local
311 | | And   Add fib table | ${dut2} | 2001:2:: | 64 | 1 | local
312 | | And   COP Add whitelist Entry | ${dut1} | ${dut1_if1} | ip6 | 1
313 | | And   COP Add whitelist Entry | ${dut2} | ${dut2_if2} | ip6 | 1
314 | | And   COP interface enable or disable | ${dut1} | ${dut1_if1} | enable
315 | | And   COP interface enable or disable | ${dut2} | ${dut2_if2} | enable
316 | | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
317 | | ...                                       | ${binary_max} | 3-node-IPv6
318 | | ...                                       | ${min_rate} | ${max_rate}
319 | | ...                                       | ${threshold}
320
321 | TC10: 1518B PDR binary search - DUT IPv6 whitelist - 2threads 2cores 1rxq
322 | | [Documentation]
323 | | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
324 | | ... | 2 threads, 2 phy cores, 1 receive queue per NIC port. [Ver] Find PDR
325 | | ... | for 1518 Byte frames using binary search start at 10GE linerate,
326 | | ... | step 10kpps, LT=0.5%.
327 | | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | PDR | SKIP_PATCH
328 | | ${framesize}= | Set Variable | 1518
329 | | ${min_rate}= | Set Variable | 10000
330 | | ${max_rate}= | Set Variable | ${10Ge_linerate_pps_1518B}
331 | | ${binary_min}= | Set Variable | ${min_rate}
332 | | ${binary_max}= | Set Variable | ${max_rate}
333 | | ${threshold}= | Set Variable | ${min_rate}
334 | | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs
335 | | And   Add PCI devices to DUTs from 3-node single link topology
336 | | And   Add No Multi Seg to all DUTs
337 | | And   Apply startup configuration on all VPP DUTs
338 | | When  IPv6 forwarding initialized in a 3-node circular topology
339 | | And   Add fib table | ${dut1} | 2001:1:: | 64 | 1 | local
340 | | And   Add fib table | ${dut2} | 2001:2:: | 64 | 1 | local
341 | | And   COP Add whitelist Entry | ${dut1} | ${dut1_if1} | ip6 | 1
342 | | And   COP Add whitelist Entry | ${dut2} | ${dut2_if2} | ip6 | 1
343 | | And   COP interface enable or disable | ${dut1} | ${dut1_if1} | enable
344 | | And   COP interface enable or disable | ${dut2} | ${dut2_if2} | enable
345 | | Then Find PDR using binary search and pps | ${framesize} | ${binary_min}
346 | | ...                                       | ${binary_max} | 3-node-IPv6
347 | | ...                                       | ${min_rate} | ${max_rate}
348 | | ...                                       | ${threshold}
349 | | ...                                       | ${glob_loss_acceptance}
350 | | ...                                       | ${glob_loss_acceptance_type}
351
352 | TC11: 9000B NDR binary search - DUT IPv6 whitelist - 2threads 2cores 1rxq
353 | | [Documentation]
354 | | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
355 | | ... | 2 threads, 2 phy cores, 1 receive queue per NIC port. [Ver] Find NDR
356 | | ... | for 9000 Byte frames using binary search start at 10GE linerate,
357 | | ... | step 5kpps.
358 | | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | NDR | SKIP_PATCH
359 | | ${framesize}= | Set Variable | 9000
360 | | ${min_rate}= | Set Variable | 5000
361 | | ${max_rate}= | Set Variable | ${10Ge_linerate_pps_9000B}
362 | | ${binary_min}= | Set Variable | ${min_rate}
363 | | ${binary_max}= | Set Variable | ${max_rate}
364 | | ${threshold}= | Set Variable | ${min_rate}
365 | | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs
366 | | And   Add PCI devices to DUTs from 3-node single link topology
367 | | And   Apply startup configuration on all VPP DUTs
368 | | When  IPv6 forwarding initialized in a 3-node circular topology
369 | | And   Add fib table | ${dut1} | 2001:1:: | 64 | 1 | local
370 | | And   Add fib table | ${dut2} | 2001:2:: | 64 | 1 | local
371 | | And   COP Add whitelist Entry | ${dut1} | ${dut1_if1} | ip6 | 1
372 | | And   COP Add whitelist Entry | ${dut2} | ${dut2_if2} | ip6 | 1
373 | | And   COP interface enable or disable | ${dut1} | ${dut1_if1} | enable
374 | | And   COP interface enable or disable | ${dut2} | ${dut2_if2} | enable
375 | | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
376 | | ...                                       | ${binary_max} | 3-node-IPv6
377 | | ...                                       | ${min_rate} | ${max_rate}
378 | | ...                                       | ${threshold}
379
380 | TC12: 9000B PDR binary search - DUT IPv6 whitelist - 2threads 2cores 1rxq
381 | | [Documentation]
382 | | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
383 | | ... | 2 threads, 2 phy cores, 1 receive queue per NIC port. [Ver] Find PDR
384 | | ... | for 9000 Byte frames using binary search start at 10GE linerate,
385 | | ... | step 5kpps, LT=0.5%.
386 | | [Tags] | 2_THREAD_NOHTT_RXQUEUES_1 | MULTI_THREAD | PDR | SKIP_PATCH
387 | | ${framesize}= | Set Variable | 9000
388 | | ${min_rate}= | Set Variable | 5000
389 | | ${max_rate}= | Set Variable | ${10Ge_linerate_pps_9000B}
390 | | ${binary_min}= | Set Variable | ${min_rate}
391 | | ${binary_max}= | Set Variable | ${max_rate}
392 | | ${threshold}= | Set Variable | ${min_rate}
393 | | Given Add '2' worker threads and rxqueues '1' without HTT to all DUTs
394 | | And   Add PCI devices to DUTs from 3-node single link topology
395 | | And   Apply startup configuration on all VPP DUTs
396 | | When  IPv6 forwarding initialized in a 3-node circular topology
397 | | And   Add fib table | ${dut1} | 2001:1:: | 64 | 1 | local
398 | | And   Add fib table | ${dut2} | 2001:2:: | 64 | 1 | local
399 | | And   COP Add whitelist Entry | ${dut1} | ${dut1_if1} | ip6 | 1
400 | | And   COP Add whitelist Entry | ${dut2} | ${dut2_if2} | ip6 | 1
401 | | And   COP interface enable or disable | ${dut1} | ${dut1_if1} | enable
402 | | And   COP interface enable or disable | ${dut2} | ${dut2_if2} | enable
403 | | Then Find PDR using binary search and pps | ${framesize} | ${binary_min}
404 | | ...                                       | ${binary_max} | 3-node-IPv6
405 | | ...                                       | ${min_rate} | ${max_rate}
406 | | ...                                       | ${threshold}
407 | | ...                                       | ${glob_loss_acceptance}
408 | | ...                                       | ${glob_loss_acceptance_type}
409
410 | TC13: 78B NDR binary search - DUT IPv6 whitelist - 4threads 4cores 2rxq
411 | | [Documentation]
412 | | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
413 | | ... | 4 threads, 4 phy cores, 2 receive queue per NIC port. [Ver] Find NDR
414 | | ... | for 78 Byte frames using binary search start at 10GE linerate,
415 | | ... | step 100kpps.
416 | | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | NDR
417 | | ${framesize}= | Set Variable | 78
418 | | ${min_rate}= | Set Variable | 100000
419 | | ${max_rate}= | Set Variable | ${10Ge_linerate_pps_78B}
420 | | ${binary_min}= | Set Variable | ${min_rate}
421 | | ${binary_max}= | Set Variable | ${max_rate}
422 | | ${threshold}= | Set Variable | ${min_rate}
423 | | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs
424 | | And   Add PCI devices to DUTs from 3-node single link topology
425 | | And   Add No Multi Seg to all DUTs
426 | | And   Apply startup configuration on all VPP DUTs
427 | | When  IPv6 forwarding initialized in a 3-node circular topology
428 | | And   Add fib table | ${dut1} | 2001:1:: | 64 | 1 | local
429 | | And   Add fib table | ${dut2} | 2001:2:: | 64 | 1 | local
430 | | And   COP Add whitelist Entry | ${dut1} | ${dut1_if1} | ip6 | 1
431 | | And   COP Add whitelist Entry | ${dut2} | ${dut2_if2} | ip6 | 1
432 | | And   COP interface enable or disable | ${dut1} | ${dut1_if1} | enable
433 | | And   COP interface enable or disable | ${dut2} | ${dut2_if2} | enable
434 | | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
435 | | ...                                       | ${binary_max} | 3-node-IPv6
436 | | ...                                       | ${min_rate} | ${max_rate}
437 | | ...                                       | ${threshold}
438
439 | TC14: 78B PDR binary search - DUT IPv6 whitelist - 4threads 4cores 2rxq
440 | | [Documentation]
441 | | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
442 | | ... | 4 threads, 4 phy cores, 2 receive queue per NIC port. [Ver] Find PDR
443 | | ... | for 78 Byte frames using binary search start at 10GE linerate,
444 | | ... | step 100kpps, LT=0.5%.
445 | | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | PDR | SKIP_PATCH
446 | | ${framesize}= | Set Variable | 78
447 | | ${min_rate}= | Set Variable | 100000
448 | | ${max_rate}= | Set Variable | ${10Ge_linerate_pps_78B}
449 | | ${binary_min}= | Set Variable | ${min_rate}
450 | | ${binary_max}= | Set Variable | ${max_rate}
451 | | ${threshold}= | Set Variable | ${min_rate}
452 | | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs
453 | | And   Add PCI devices to DUTs from 3-node single link topology
454 | | And   Add No Multi Seg to all DUTs
455 | | And   Apply startup configuration on all VPP DUTs
456 | | When  IPv6 forwarding initialized in a 3-node circular topology
457 | | And   Add fib table | ${dut1} | 2001:1:: | 64 | 1 | local
458 | | And   Add fib table | ${dut2} | 2001:2:: | 64 | 1 | local
459 | | And   COP Add whitelist Entry | ${dut1} | ${dut1_if1} | ip6 | 1
460 | | And   COP Add whitelist Entry | ${dut2} | ${dut2_if2} | ip6 | 1
461 | | And   COP interface enable or disable | ${dut1} | ${dut1_if1} | enable
462 | | And   COP interface enable or disable | ${dut2} | ${dut2_if2} | enable
463 | | Then Find PDR using binary search and pps | ${framesize} | ${binary_min}
464 | | ...                                       | ${binary_max} | 3-node-IPv6
465 | | ...                                       | ${min_rate} | ${max_rate}
466 | | ...                                       | ${threshold}
467 | | ...                                       | ${glob_loss_acceptance}
468 | | ...                                       | ${glob_loss_acceptance_type}
469
470 | TC15: 1518B NDR binary search - DUT IPv6 whitelist - 4threads 4cores 2rxq
471 | | [Documentation]
472 | | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
473 | | ... | 4 threads, 4 phy cores, 2 receive queue per NIC port. [Ver] Find NDR
474 | | ... | for 1518 Byte frames using binary search start at 10GE linerate,
475 | | ... | step 10kpps.
476 | | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | NDR | SKIP_PATCH
477 | | ${framesize}= | Set Variable | 1518
478 | | ${min_rate}= | Set Variable | 10000
479 | | ${max_rate}= | Set Variable | ${10Ge_linerate_pps_1518B}
480 | | ${binary_min}= | Set Variable | ${min_rate}
481 | | ${binary_max}= | Set Variable | ${max_rate}
482 | | ${threshold}= | Set Variable | ${min_rate}
483 | | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs
484 | | And   Add PCI devices to DUTs from 3-node single link topology
485 | | And   Add No Multi Seg to all DUTs
486 | | And   Apply startup configuration on all VPP DUTs
487 | | When  IPv6 forwarding initialized in a 3-node circular topology
488 | | And   Add fib table | ${dut1} | 2001:1:: | 64 | 1 | local
489 | | And   Add fib table | ${dut2} | 2001:2:: | 64 | 1 | local
490 | | And   COP Add whitelist Entry | ${dut1} | ${dut1_if1} | ip6 | 1
491 | | And   COP Add whitelist Entry | ${dut2} | ${dut2_if2} | ip6 | 1
492 | | And   COP interface enable or disable | ${dut1} | ${dut1_if1} | enable
493 | | And   COP interface enable or disable | ${dut2} | ${dut2_if2} | enable
494 | | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
495 | | ...                                       | ${binary_max} | 3-node-IPv6
496 | | ...                                       | ${min_rate} | ${max_rate}
497 | | ...                                       | ${threshold}
498
499 | TC16: 1518B PDR binary search - DUT IPv6 whitelist - 4threads 4cores 2rxq
500 | | [Documentation]
501 | | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
502 | | ... | 4 threads, 4 phy cores, 2 receive queue per NIC port. [Ver] Find PDR
503 | | ... | for 1518 Byte frames using binary search start at 10GE linerate,
504 | | ... | step 10kpps, LT=0.5%.
505 | | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | PDR | SKIP_PATCH
506 | | ${framesize}= | Set Variable | 1518
507 | | ${min_rate}= | Set Variable | 10000
508 | | ${max_rate}= | Set Variable | ${10Ge_linerate_pps_1518B}
509 | | ${binary_min}= | Set Variable | ${min_rate}
510 | | ${binary_max}= | Set Variable | ${max_rate}
511 | | ${threshold}= | Set Variable | ${min_rate}
512 | | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs
513 | | And   Add PCI devices to DUTs from 3-node single link topology
514 | | And   Add No Multi Seg to all DUTs
515 | | And   Apply startup configuration on all VPP DUTs
516 | | When  IPv6 forwarding initialized in a 3-node circular topology
517 | | And   Add fib table | ${dut1} | 2001:1:: | 64 | 1 | local
518 | | And   Add fib table | ${dut2} | 2001:2:: | 64 | 1 | local
519 | | And   COP Add whitelist Entry | ${dut1} | ${dut1_if1} | ip6 | 1
520 | | And   COP Add whitelist Entry | ${dut2} | ${dut2_if2} | ip6 | 1
521 | | And   COP interface enable or disable | ${dut1} | ${dut1_if1} | enable
522 | | And   COP interface enable or disable | ${dut2} | ${dut2_if2} | enable
523 | | Then Find PDR using binary search and pps | ${framesize} | ${binary_min}
524 | | ...                                       | ${binary_max} | 3-node-IPv6
525 | | ...                                       | ${min_rate} | ${max_rate}
526 | | ...                                       | ${threshold}
527 | | ...                                       | ${glob_loss_acceptance}
528 | | ...                                       | ${glob_loss_acceptance_type}
529
530 | TC17: 9000B NDR binary search - DUT IPv6 whitelist - 4threads 4cores 2rxq
531 | | [Documentation]
532 | | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
533 | | ... | 4 threads, 4 phy cores, 2 receive queue per NIC port. [Ver] Find NDR
534 | | ... | for 9000 Byte frames using binary search start at 10GE linerate,
535 | | ... | step 5kpps.
536 | | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | NDR | SKIP_PATCH
537 | | ${framesize}= | Set Variable | 9000
538 | | ${min_rate}= | Set Variable | 5000
539 | | ${max_rate}= | Set Variable | ${10Ge_linerate_pps_9000B}
540 | | ${binary_min}= | Set Variable | ${min_rate}
541 | | ${binary_max}= | Set Variable | ${max_rate}
542 | | ${threshold}= | Set Variable | ${min_rate}
543 | | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs
544 | | And   Add PCI devices to DUTs from 3-node single link topology
545 | | And   Apply startup configuration on all VPP DUTs
546 | | When  IPv6 forwarding initialized in a 3-node circular topology
547 | | And   Add fib table | ${dut1} | 2001:1:: | 64 | 1 | local
548 | | And   Add fib table | ${dut2} | 2001:2:: | 64 | 1 | local
549 | | And   COP Add whitelist Entry | ${dut1} | ${dut1_if1} | ip6 | 1
550 | | And   COP Add whitelist Entry | ${dut2} | ${dut2_if2} | ip6 | 1
551 | | And   COP interface enable or disable | ${dut1} | ${dut1_if1} | enable
552 | | And   COP interface enable or disable | ${dut2} | ${dut2_if2} | enable
553 | | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
554 | | ...                                       | ${binary_max} | 3-node-IPv6
555 | | ...                                       | ${min_rate} | ${max_rate}
556 | | ...                                       | ${threshold}
557
558 | TC18: 9000B PDR binary search - DUT IPv6 whitelist - 4threads 4cores 2rxq
559 | | [Documentation]
560 | | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with \
561 | | ... | 4 threads, 4 phy cores, 2 receive queue per NIC port. [Ver] Find PDR
562 | | ... | for 9000 Byte frames using binary search start at 10GE linerate,
563 | | ... | step 5kpps, LT=0.5%.
564 | | [Tags] | 4_THREAD_NOHTT_RXQUEUES_2 | MULTI_THREAD | PDR | SKIP_PATCH
565 | | ${framesize}= | Set Variable | 9000
566 | | ${min_rate}= | Set Variable | 5000
567 | | ${max_rate}= | Set Variable | ${10Ge_linerate_pps_9000B}
568 | | ${binary_min}= | Set Variable | ${min_rate}
569 | | ${binary_max}= | Set Variable | ${max_rate}
570 | | ${threshold}= | Set Variable | ${min_rate}
571 | | Given Add '4' worker threads and rxqueues '2' without HTT to all DUTs
572 | | And   Add PCI devices to DUTs from 3-node single link topology
573 | | And   Apply startup configuration on all VPP DUTs
574 | | When  IPv6 forwarding initialized in a 3-node circular topology
575 | | And   Add fib table | ${dut1} | 2001:1:: | 64 | 1 | local
576 | | And   Add fib table | ${dut2} | 2001:2:: | 64 | 1 | local
577 | | And   COP Add whitelist Entry | ${dut1} | ${dut1_if1} | ip6 | 1
578 | | And   COP Add whitelist Entry | ${dut2} | ${dut2_if2} | ip6 | 1
579 | | And   COP interface enable or disable | ${dut1} | ${dut1_if1} | enable
580 | | And   COP interface enable or disable | ${dut2} | ${dut2_if2} | enable
581 | | Then Find PDR using binary search and pps | ${framesize} | ${binary_min}
582 | | ...                                       | ${binary_max} | 3-node-IPv6
583 | | ...                                       | ${min_rate} | ${max_rate}
584 | | ...                                       | ${threshold}
585 | | ...                                       | ${glob_loss_acceptance}
586 | | ...                                       | ${glob_loss_acceptance_type}