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