CSIT-678: Re-organize L2 libraries - performance
[csit.git] / tests / perf / 10ge2p1x520-ethip4-ip4base-iacldstbase-ndrpdrdisc.robot
1 # Copyright (c) 2017 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_setup.robot
16 | Library | resources.libraries.python.Classify.Classify
17 | Library | resources.libraries.python.IPv4Setup.Dut | ${nodes['DUT1']}
18 | ... | WITH NAME | dut1_v4
19 | Library | resources.libraries.python.IPv4Setup.Dut | ${nodes['DUT2']}
20 | ... | WITH NAME | dut2_v4
21 | ...
22 | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDRDISC
23 | ... | NIC_Intel-X520-DA2 | ETH | IP4FWD | FEATURE | IACLDST
24 | ...
25 | Suite Setup | Set up 3-node performance topology with DUT's NIC model
26 | ... | L3 | Intel-X520-DA2
27 | Suite Teardown | Tear down 3-node performance topology
28 | ...
29 | Test Setup | Set up performance test
30 | ...
31 | Test Teardown | Tear down performance discovery test | ${min_rate}pps
32 | ... | ${framesize} | ${traffic_profile}
33 | ...
34 | Documentation | *RFC2544: Pkt throughput IPv4 iAcl whitelist test cases*
35 | ...
36 | ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology
37 | ... | with single links between nodes.
38 | ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing.
39 | ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4
40 | ... | routing, two static IPv4 /24 routes and IPv4 iAcl security whitelist
41 | ... | ingress /24 filter entries applied on links TG - DUT1 and DUT2 - TG.
42 | ... | DUT1 and DUT2 tested with 2p10GE NIC X520 Niantic by Intel.
43 | ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop
44 | ... | Rate) with zero packet loss tolerance or throughput PDR (Partial Drop
45 | ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage
46 | ... | of packets transmitted. NDR and PDR are discovered for different
47 | ... | Ethernet L2 frame sizes using either binary search or linear search
48 | ... | algorithms with configured starting rate and final step that determines
49 | ... | throughput measurement resolution. Test packets are generated by TG on
50 | ... | links to DUTs. TG traffic profile contains two L3 flow-groups
51 | ... | (flow-group per direction, 253 flows per flow-group) with all packets
52 | ... | containing Ethernet header, IPv4 header with IP protocol=61 and
53 | ... | static payload. MAC addresses are matching MAC addresses of the TG
54 | ... | node interfaces.
55 | ... | *[Ref] Applicable standard specifications:* RFC2544.
56
57 *** Variables ***
58 # X520-DA2 bandwidth limit
59 | ${s_limit} | ${10000000000}
60 # Traffic profile:
61 | ${traffic_profile} | trex-sl-3n-ethip4-ip4src253
62
63 *** Test Cases ***
64 | tc01-64B-1t1c-ethip4-ip4base-iacldstbase-ndrdisc
65 | | [Documentation]
66 | | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
67 | | ... | 1 thread, 1 phy core, 1 receive queue per NIC port. [Ver] Find NDR
68 | | ... | for 64 Byte frames using binary search start at 10GE linerate,
69 | | ... | step 100kpps.
70 | | [Tags] | 64B | 1T1C | STHREAD | NDRDISC
71 | | ${framesize}= | Set Variable | ${64}
72 | | ${min_rate}= | Set Variable | ${100000}
73 | | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
74 | | ${binary_min}= | Set Variable | ${min_rate}
75 | | ${binary_max}= | Set Variable | ${max_rate}
76 | | ${threshold}= | Set Variable | ${min_rate}
77 | | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
78 | | And Add PCI devices to DUTs in 3-node single link topology
79 | | And Add no multi seg to all DUTs
80 | | And Apply startup configuration on all VPP DUTs
81 | | When Initialize IPv4 forwarding in 3-node circular topology
82 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
83 | | ... | ${dut1} | ip4 | dst
84 | | And Vpp Configures Classify Session L3
85 | | ... | ${dut1} | permit | ${table_idx} | ${skip_n} | ${match_n}
86 | | ... | ip4 | dst | 20.20.20.2
87 | | And Vpp Enable Input Acl Interface
88 | | ... | ${dut1} | ${dut1_if1} | ip4 | ${table_idx}
89 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
90 | | ... | ${dut2} | ip4 | dst
91 | | And Vpp Configures Classify Session L3
92 | | ... | ${dut2} | permit | ${table_idx} | ${skip_n} | ${match_n}
93 | | ... | ip4 | dst | 10.10.10.2
94 | | And Vpp Enable Input Acl Interface
95 | | ... | ${dut2} | ${dut2_if2} | ip4 | ${table_idx}
96 | | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
97 | | ... | ${binary_max} | ${traffic_profile}
98 | | ... | ${min_rate} | ${max_rate} | ${threshold}
99
100 | tc02-64B-1t1c-ethip4-ip4base-iacldstbase-pdrdisc
101 | | [Documentation]
102 | | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
103 | | ... | 1 thread, 1 phy core, 1 receive queue per NIC port. [Ver] Find PDR
104 | | ... | for 64 Byte frames using binary search start at 10GE linerate,
105 | | ... | step 100kpps, LT=0.5%.
106 | | [Tags] | 64B | 1T1C | STHREAD | PDRDISC | SKIP_PATCH
107 | | ${framesize}= | Set Variable | ${64}
108 | | ${min_rate}= | Set Variable | ${100000}
109 | | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
110 | | ${binary_min}= | Set Variable | ${min_rate}
111 | | ${binary_max}= | Set Variable | ${max_rate}
112 | | ${threshold}= | Set Variable | ${min_rate}
113 | | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
114 | | And Add PCI devices to DUTs in 3-node single link topology
115 | | And Add no multi seg to all DUTs
116 | | And Apply startup configuration on all VPP DUTs
117 | | When Initialize IPv4 forwarding in 3-node circular topology
118 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
119 | | ... | ${dut1} | ip4 | dst
120 | | And Vpp Configures Classify Session L3
121 | | ... | ${dut1} | permit | ${table_idx} | ${skip_n} | ${match_n}
122 | | ... | ip4 | dst | 20.20.20.2
123 | | And Vpp Enable Input Acl Interface
124 | | ... | ${dut1} | ${dut1_if1} | ip4 | ${table_idx}
125 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
126 | | ... | ${dut2} | ip4 | dst
127 | | And Vpp Configures Classify Session L3
128 | | ... | ${dut2} | permit | ${table_idx} | ${skip_n} | ${match_n}
129 | | ... | ip4 | dst | 10.10.10.2
130 | | And Vpp Enable Input Acl Interface
131 | | ... | ${dut2} | ${dut2_if2} | ip4 | ${table_idx}
132 | | Then Find PDR using binary search and pps | ${framesize} | ${binary_min}
133 | | ... | ${binary_max} | ${traffic_profile}
134 | | ... | ${min_rate} | ${max_rate} | ${threshold}
135 | | ... | ${perf_pdr_loss_acceptance} | ${perf_pdr_loss_acceptance_type}
136
137 | tc03-1518B-1t1c-ethip4-ip4base-iacldstbase-ndrdisc
138 | | [Documentation]
139 | | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
140 | | ... | 1 thread, 1 phy core, 1 receive queue per NIC port. [Ver] Find NDR
141 | | ... | for 1518 Byte frames using binary search start at 10GE linerate,
142 | | ... | step 10kpps.
143 | | [Tags] | 1518B | 1T1C | STHREAD | NDRDISC
144 | | ${framesize}= | Set Variable | ${1518}
145 | | ${min_rate}= | Set Variable | ${10000}
146 | | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
147 | | ${binary_min}= | Set Variable | ${min_rate}
148 | | ${binary_max}= | Set Variable | ${max_rate}
149 | | ${threshold}= | Set Variable | ${min_rate}
150 | | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
151 | | And Add PCI devices to DUTs in 3-node single link topology
152 | | And Add no multi seg to all DUTs
153 | | And Apply startup configuration on all VPP DUTs
154 | | When Initialize IPv4 forwarding in 3-node circular topology
155 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
156 | | ... | ${dut1} | ip4 | dst
157 | | And Vpp Configures Classify Session L3
158 | | ... | ${dut1} | permit | ${table_idx} | ${skip_n} | ${match_n}
159 | | ... | ip4 | dst | 20.20.20.2
160 | | And Vpp Enable Input Acl Interface
161 | | ... | ${dut1} | ${dut1_if1} | ip4 | ${table_idx}
162 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
163 | | ... | ${dut2} | ip4 | dst
164 | | And Vpp Configures Classify Session L3
165 | | ... | ${dut2} | permit | ${table_idx} | ${skip_n} | ${match_n}
166 | | ... | ip4 | dst | 10.10.10.2
167 | | And Vpp Enable Input Acl Interface
168 | | ... | ${dut2} | ${dut2_if2} | ip4 | ${table_idx}
169 | | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
170 | | ... | ${binary_max} | ${traffic_profile}
171 | | ... | ${min_rate} | ${max_rate} | ${threshold}
172
173 | tc04-1518B-1t1c-ethip4-ip4base-iacldstbase-pdrdisc
174 | | [Documentation]
175 | | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
176 | | ... | 1 thread, 1 phy core, 1 receive queue per NIC port. [Ver] Find PDR
177 | | ... | for 1518 Byte frames using binary search start at 10GE linerate,
178 | | ... | step 10kpps, LT=0.5%.
179 | | [Tags] | 1518B | 1T1C | STHREAD | PDRDISC | SKIP_PATCH
180 | | ${framesize}= | Set Variable | ${1518}
181 | | ${min_rate}= | Set Variable | ${10000}
182 | | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
183 | | ${binary_min}= | Set Variable | ${min_rate}
184 | | ${binary_max}= | Set Variable | ${max_rate}
185 | | ${threshold}= | Set Variable | ${min_rate}
186 | | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
187 | | And Add PCI devices to DUTs in 3-node single link topology
188 | | And Add no multi seg to all DUTs
189 | | And Apply startup configuration on all VPP DUTs
190 | | When Initialize IPv4 forwarding in 3-node circular topology
191 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
192 | | ... | ${dut1} | ip4 | dst
193 | | And Vpp Configures Classify Session L3
194 | | ... | ${dut1} | permit | ${table_idx} | ${skip_n} | ${match_n}
195 | | ... | ip4 | dst | 20.20.20.2
196 | | And Vpp Enable Input Acl Interface
197 | | ... | ${dut1} | ${dut1_if1} | ip4 | ${table_idx}
198 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
199 | | ... | ${dut2} | ip4 | dst
200 | | And Vpp Configures Classify Session L3
201 | | ... | ${dut2} | permit | ${table_idx} | ${skip_n} | ${match_n}
202 | | ... | ip4 | dst | 10.10.10.2
203 | | And Vpp Enable Input Acl Interface
204 | | ... | ${dut2} | ${dut2_if2} | ip4 | ${table_idx}
205 | | Then Find PDR using binary search and pps | ${framesize} | ${binary_min}
206 | | ... | ${binary_max} | ${traffic_profile}
207 | | ... | ${min_rate} | ${max_rate} | ${threshold}
208 | | ... | ${perf_pdr_loss_acceptance} | ${perf_pdr_loss_acceptance_type}
209
210 | tc05-9000B-1t1c-ethip4-ip4base-iacldstbase-ndrdisc
211 | | [Documentation]
212 | | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
213 | | ... | 1 thread, 1 phy core, 1 receive queue per NIC port. [Ver] Find NDR
214 | | ... | for 9000 Byte frames using binary search start at 10GE linerate,
215 | | ... | step 5kpps.
216 | | [Tags] | 9000B | 1T1C | STHREAD | NDRDISC
217 | | ${framesize}= | Set Variable | ${9000}
218 | | ${min_rate}= | Set Variable | ${10000}
219 | | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
220 | | ${binary_min}= | Set Variable | ${min_rate}
221 | | ${binary_max}= | Set Variable | ${max_rate}
222 | | ${threshold}= | Set Variable | ${min_rate}
223 | | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
224 | | And Add PCI devices to DUTs in 3-node single link topology
225 | | And Apply startup configuration on all VPP DUTs
226 | | When Initialize IPv4 forwarding in 3-node circular topology
227 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
228 | | ... | ${dut1} | ip4 | dst
229 | | And Vpp Configures Classify Session L3
230 | | ... | ${dut1} | permit | ${table_idx} | ${skip_n} | ${match_n}
231 | | ... | ip4 | dst | 20.20.20.2
232 | | And Vpp Enable Input Acl Interface
233 | | ... | ${dut1} | ${dut1_if1} | ip4 | ${table_idx}
234 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
235 | | ... | ${dut2} | ip4 | dst
236 | | And Vpp Configures Classify Session L3
237 | | ... | ${dut2} | permit | ${table_idx} | ${skip_n} | ${match_n}
238 | | ... | ip4 | dst | 10.10.10.2
239 | | And Vpp Enable Input Acl Interface
240 | | ... | ${dut2} | ${dut2_if2} | ip4 | ${table_idx}
241 | | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
242 | | ... | ${binary_max} | ${traffic_profile}
243 | | ... | ${min_rate} | ${max_rate} | ${threshold}
244
245 | tc06-9000B-1t1c-ethip4-ip4base-iacldstbase-pdrdisc
246 | | [Documentation]
247 | | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
248 | | ... | 1 thread, 1 phy core, 1 receive queue per NIC port. [Ver] Find PDR
249 | | ... | for 9000 Byte frames using binary search start at 10GE linerate,
250 | | ... | step 5kpps, LT=0.5%.
251 | | [Tags] | 9000B | 1T1C | STHREAD | PDRDISC | SKIP_PATCH
252 | | ${framesize}= | Set Variable | ${9000}
253 | | ${min_rate}= | Set Variable | ${10000}
254 | | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
255 | | ${binary_min}= | Set Variable | ${min_rate}
256 | | ${binary_max}= | Set Variable | ${max_rate}
257 | | ${threshold}= | Set Variable | ${min_rate}
258 | | Given Add '1' worker threads and '1' rxqueues in 3-node single-link circular topology
259 | | And Add PCI devices to DUTs in 3-node single link topology
260 | | And Apply startup configuration on all VPP DUTs
261 | | When Initialize IPv4 forwarding in 3-node circular topology
262 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
263 | | ... | ${dut1} | ip4 | dst
264 | | And Vpp Configures Classify Session L3
265 | | ... | ${dut1} | permit | ${table_idx} | ${skip_n} | ${match_n}
266 | | ... | ip4 | dst | 20.20.20.2
267 | | And Vpp Enable Input Acl Interface
268 | | ... | ${dut1} | ${dut1_if1} | ip4 | ${table_idx}
269 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
270 | | ... | ${dut2} | ip4 | dst
271 | | And Vpp Configures Classify Session L3
272 | | ... | ${dut2} | permit | ${table_idx} | ${skip_n} | ${match_n}
273 | | ... | ip4 | dst | 10.10.10.2
274 | | And Vpp Enable Input Acl Interface
275 | | ... | ${dut2} | ${dut2_if2} | ip4 | ${table_idx}
276 | | Then Find PDR using binary search and pps | ${framesize} | ${binary_min}
277 | | ... | ${binary_max} | ${traffic_profile}
278 | | ... | ${min_rate} | ${max_rate} | ${threshold}
279 | | ... | ${perf_pdr_loss_acceptance} | ${perf_pdr_loss_acceptance_type}
280
281 | tc07-64B-2t2c-ethip4-ip4base-iacldstbase-ndrdisc
282 | | [Documentation]
283 | | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
284 | | ... | 2 threads, 2 phy cores, 1 receive queue per NIC port. [Ver] Find NDR
285 | | ... | for 64 Byte frames using binary search start at 10GE linerate,
286 | | ... | step 100kpps.
287 | | [Tags] | 64B | 2T2C | MTHREAD | NDRDISC
288 | | ${framesize}= | Set Variable | ${64}
289 | | ${min_rate}= | Set Variable | ${100000}
290 | | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
291 | | ${binary_min}= | Set Variable | ${min_rate}
292 | | ${binary_max}= | Set Variable | ${max_rate}
293 | | ${threshold}= | Set Variable | ${min_rate}
294 | | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
295 | | And Add PCI devices to DUTs in 3-node single link topology
296 | | And Add no multi seg to all DUTs
297 | | And Apply startup configuration on all VPP DUTs
298 | | When Initialize IPv4 forwarding in 3-node circular topology
299 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
300 | | ... | ${dut1} | ip4 | dst
301 | | And Vpp Configures Classify Session L3
302 | | ... | ${dut1} | permit | ${table_idx} | ${skip_n} | ${match_n}
303 | | ... | ip4 | dst | 20.20.20.2
304 | | And Vpp Enable Input Acl Interface
305 | | ... | ${dut1} | ${dut1_if1} | ip4 | ${table_idx}
306 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
307 | | ... | ${dut2} | ip4 | dst
308 | | And Vpp Configures Classify Session L3
309 | | ... | ${dut2} | permit | ${table_idx} | ${skip_n} | ${match_n}
310 | | ... | ip4 | dst | 10.10.10.2
311 | | And Vpp Enable Input Acl Interface
312 | | ... | ${dut2} | ${dut2_if2} | ip4 | ${table_idx}
313 | | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
314 | | ... | ${binary_max} | ${traffic_profile}
315 | | ... | ${min_rate} | ${max_rate} | ${threshold}
316
317 | tc08-64B-2t2c-ethip4-ip4base-iacldstbase-pdrdisc
318 | | [Documentation]
319 | | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
320 | | ... | 2 threads, 2 phy cores, 1 receive queue per NIC port. [Ver] Find PDR
321 | | ... | for 64 Byte frames using binary search start at 10GE linerate,
322 | | ... | step 100kpps, LT=0.5%.
323 | | [Tags] | 64B | 2T2C | MTHREAD | PDRDISC | SKIP_PATCH
324 | | ${framesize}= | Set Variable | ${64}
325 | | ${min_rate}= | Set Variable | ${100000}
326 | | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
327 | | ${binary_min}= | Set Variable | ${min_rate}
328 | | ${binary_max}= | Set Variable | ${max_rate}
329 | | ${threshold}= | Set Variable | ${min_rate}
330 | | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
331 | | And Add PCI devices to DUTs in 3-node single link topology
332 | | And Add no multi seg to all DUTs
333 | | And Apply startup configuration on all VPP DUTs
334 | | When Initialize IPv4 forwarding in 3-node circular topology
335 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
336 | | ... | ${dut1} | ip4 | dst
337 | | And Vpp Configures Classify Session L3
338 | | ... | ${dut1} | permit | ${table_idx} | ${skip_n} | ${match_n}
339 | | ... | ip4 | dst | 20.20.20.2
340 | | And Vpp Enable Input Acl Interface
341 | | ... | ${dut1} | ${dut1_if1} | ip4 | ${table_idx}
342 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
343 | | ... | ${dut2} | ip4 | dst
344 | | And Vpp Configures Classify Session L3
345 | | ... | ${dut2} | permit | ${table_idx} | ${skip_n} | ${match_n}
346 | | ... | ip4 | dst | 10.10.10.2
347 | | And Vpp Enable Input Acl Interface
348 | | ... | ${dut2} | ${dut2_if2} | ip4 | ${table_idx}
349 | | Then Find PDR using binary search and pps | ${framesize} | ${binary_min}
350 | | ... | ${binary_max} | ${traffic_profile}
351 | | ... | ${min_rate} | ${max_rate} | ${threshold}
352 | | ... | ${perf_pdr_loss_acceptance} | ${perf_pdr_loss_acceptance_type}
353
354 | tc09-1518B-2t2c-ethip4-ip4base-iacldstbase-ndrdisc
355 | | [Documentation]
356 | | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
357 | | ... | 2 threads, 2 phy cores, 1 receive queue per NIC port. [Ver] Find NDR
358 | | ... | for 1518 Byte frames using binary search start at 10GE linerate,
359 | | ... | step 10kpps.
360 | | [Tags] | 1518B | 2T2C | MTHREAD | NDRDISC | SKIP_PATCH
361 | | ${framesize}= | Set Variable | ${1518}
362 | | ${min_rate}= | Set Variable | ${10000}
363 | | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
364 | | ${binary_min}= | Set Variable | ${min_rate}
365 | | ${binary_max}= | Set Variable | ${max_rate}
366 | | ${threshold}= | Set Variable | ${min_rate}
367 | | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
368 | | And Add PCI devices to DUTs in 3-node single link topology
369 | | And Add no multi seg to all DUTs
370 | | And Apply startup configuration on all VPP DUTs
371 | | When Initialize IPv4 forwarding in 3-node circular topology
372 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
373 | | ... | ${dut1} | ip4 | dst
374 | | And Vpp Configures Classify Session L3
375 | | ... | ${dut1} | permit | ${table_idx} | ${skip_n} | ${match_n}
376 | | ... | ip4 | dst | 20.20.20.2
377 | | And Vpp Enable Input Acl Interface
378 | | ... | ${dut1} | ${dut1_if1} | ip4 | ${table_idx}
379 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
380 | | ... | ${dut2} | ip4 | dst
381 | | And Vpp Configures Classify Session L3
382 | | ... | ${dut2} | permit | ${table_idx} | ${skip_n} | ${match_n}
383 | | ... | ip4 | dst | 10.10.10.2
384 | | And Vpp Enable Input Acl Interface
385 | | ... | ${dut2} | ${dut2_if2} | ip4 | ${table_idx}
386 | | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
387 | | ... | ${binary_max} | ${traffic_profile}
388 | | ... | ${min_rate} | ${max_rate} | ${threshold}
389
390 | tc10-1518B-2t2c-ethip4-ip4base-iacldstbase-pdrdisc
391 | | [Documentation]
392 | | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
393 | | ... | 2 threads, 2 phy cores, 1 receive queue per NIC port. [Ver] Find PDR
394 | | ... | for 1518 Byte frames using binary search start at 10GE linerate,
395 | | ... | step 10kpps, LT=0.5%.
396 | | [Tags] | 1518B | 2T2C | MTHREAD | PDRDISC | SKIP_PATCH
397 | | ${framesize}= | Set Variable | ${1518}
398 | | ${min_rate}= | Set Variable | ${10000}
399 | | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
400 | | ${binary_min}= | Set Variable | ${min_rate}
401 | | ${binary_max}= | Set Variable | ${max_rate}
402 | | ${threshold}= | Set Variable | ${min_rate}
403 | | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
404 | | And Add PCI devices to DUTs in 3-node single link topology
405 | | And Add no multi seg to all DUTs
406 | | And Apply startup configuration on all VPP DUTs
407 | | When Initialize IPv4 forwarding in 3-node circular topology
408 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
409 | | ... | ${dut1} | ip4 | dst
410 | | And Vpp Configures Classify Session L3
411 | | ... | ${dut1} | permit | ${table_idx} | ${skip_n} | ${match_n}
412 | | ... | ip4 | dst | 20.20.20.2
413 | | And Vpp Enable Input Acl Interface
414 | | ... | ${dut1} | ${dut1_if1} | ip4 | ${table_idx}
415 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
416 | | ... | ${dut2} | ip4 | dst
417 | | And Vpp Configures Classify Session L3
418 | | ... | ${dut2} | permit | ${table_idx} | ${skip_n} | ${match_n}
419 | | ... | ip4 | dst | 10.10.10.2
420 | | And Vpp Enable Input Acl Interface
421 | | ... | ${dut2} | ${dut2_if2} | ip4 | ${table_idx}
422 | | Then Find PDR using binary search and pps | ${framesize} | ${binary_min}
423 | | ... | ${binary_max} | ${traffic_profile}
424 | | ... | ${min_rate} | ${max_rate} | ${threshold}
425 | | ... | ${perf_pdr_loss_acceptance} | ${perf_pdr_loss_acceptance_type}
426
427 | tc11-9000B-2t2c-ethip4-ip4base-iacldstbase-ndrdisc
428 | | [Documentation]
429 | | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
430 | | ... | 2 threads, 2 phy cores, 1 receive queue per NIC port. [Ver] Find NDR
431 | | ... | for 9000 Byte frames using binary search start at 10GE linerate,
432 | | ... | step 5kpps.
433 | | [Tags] | 9000B | 2T2C | MTHREAD | NDRDISC | SKIP_PATCH
434 | | ${framesize}= | Set Variable | ${9000}
435 | | ${min_rate}= | Set Variable | ${10000}
436 | | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
437 | | ${binary_min}= | Set Variable | ${min_rate}
438 | | ${binary_max}= | Set Variable | ${max_rate}
439 | | ${threshold}= | Set Variable | ${min_rate}
440 | | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
441 | | And Add PCI devices to DUTs in 3-node single link topology
442 | | And Apply startup configuration on all VPP DUTs
443 | | When Initialize IPv4 forwarding in 3-node circular topology
444 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
445 | | ... | ${dut1} | ip4 | dst
446 | | And Vpp Configures Classify Session L3
447 | | ... | ${dut1} | permit | ${table_idx} | ${skip_n} | ${match_n}
448 | | ... | ip4 | dst | 20.20.20.2
449 | | And Vpp Enable Input Acl Interface
450 | | ... | ${dut1} | ${dut1_if1} | ip4 | ${table_idx}
451 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
452 | | ... | ${dut2} | ip4 | dst
453 | | And Vpp Configures Classify Session L3
454 | | ... | ${dut2} | permit | ${table_idx} | ${skip_n} | ${match_n}
455 | | ... | ip4 | dst | 10.10.10.2
456 | | And Vpp Enable Input Acl Interface
457 | | ... | ${dut2} | ${dut2_if2} | ip4 | ${table_idx}
458 | | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
459 | | ... | ${binary_max} | ${traffic_profile}
460 | | ... | ${min_rate} | ${max_rate} | ${threshold}
461
462 | tc12-9000B-2t2c-ethip4-ip4base-iacldstbase-pdrdisc
463 | | [Documentation]
464 | | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
465 | | ... | 2 threads, 2 phy cores, 1 receive queue per NIC port. [Ver] Find PDR
466 | | ... | for 9000 Byte frames using binary search start at 10GE linerate,
467 | | ... | step 5kpps, LT=0.5%.
468 | | [Tags] | 9000B | 2T2C | MTHREAD | PDRDISC | SKIP_PATCH
469 | | ${framesize}= | Set Variable | ${9000}
470 | | ${min_rate}= | Set Variable | ${10000}
471 | | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
472 | | ${binary_min}= | Set Variable | ${min_rate}
473 | | ${binary_max}= | Set Variable | ${max_rate}
474 | | ${threshold}= | Set Variable | ${min_rate}
475 | | Given Add '2' worker threads and '1' rxqueues in 3-node single-link circular topology
476 | | And Add PCI devices to DUTs in 3-node single link topology
477 | | And Apply startup configuration on all VPP DUTs
478 | | When Initialize IPv4 forwarding in 3-node circular topology
479 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
480 | | ... | ${dut1} | ip4 | dst
481 | | And Vpp Configures Classify Session L3
482 | | ... | ${dut1} | permit | ${table_idx} | ${skip_n} | ${match_n}
483 | | ... | ip4 | dst | 20.20.20.2
484 | | And Vpp Enable Input Acl Interface
485 | | ... | ${dut1} | ${dut1_if1} | ip4 | ${table_idx}
486 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
487 | | ... | ${dut2} | ip4 | dst
488 | | And Vpp Configures Classify Session L3
489 | | ... | ${dut2} | permit | ${table_idx} | ${skip_n} | ${match_n}
490 | | ... | ip4 | dst | 10.10.10.2
491 | | And Vpp Enable Input Acl Interface
492 | | ... | ${dut2} | ${dut2_if2} | ip4 | ${table_idx}
493 | | Then Find PDR using binary search and pps | ${framesize} | ${binary_min}
494 | | ... | ${binary_max} | ${traffic_profile}
495 | | ... | ${min_rate} | ${max_rate} | ${threshold}
496 | | ... | ${perf_pdr_loss_acceptance} | ${perf_pdr_loss_acceptance_type}
497
498 | tc13-64B-4t4c-ethip4-ip4base-iacldstbase-ndrdisc
499 | | [Documentation]
500 | | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
501 | | ... | 4 threads, 4 phy cores, 2 receive queue per NIC port. [Ver] Find NDR
502 | | ... | for 64 Byte frames using binary search start at 10GE linerate,
503 | | ... | step 100kpps.
504 | | [Tags] | 64B | 4T4C | MTHREAD | NDRDISC
505 | | ${framesize}= | Set Variable | ${64}
506 | | ${min_rate}= | Set Variable | ${100000}
507 | | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
508 | | ${binary_min}= | Set Variable | ${min_rate}
509 | | ${binary_max}= | Set Variable | ${max_rate}
510 | | ${threshold}= | Set Variable | ${min_rate}
511 | | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
512 | | And Add PCI devices to DUTs in 3-node single link topology
513 | | And Add no multi seg to all DUTs
514 | | And Apply startup configuration on all VPP DUTs
515 | | When Initialize IPv4 forwarding in 3-node circular topology
516 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
517 | | ... | ${dut1} | ip4 | dst
518 | | And Vpp Configures Classify Session L3
519 | | ... | ${dut1} | permit | ${table_idx} | ${skip_n} | ${match_n}
520 | | ... | ip4 | dst | 20.20.20.2
521 | | And Vpp Enable Input Acl Interface
522 | | ... | ${dut1} | ${dut1_if1} | ip4 | ${table_idx}
523 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
524 | | ... | ${dut2} | ip4 | dst
525 | | And Vpp Configures Classify Session L3
526 | | ... | ${dut2} | permit | ${table_idx} | ${skip_n} | ${match_n}
527 | | ... | ip4 | dst | 10.10.10.2
528 | | And Vpp Enable Input Acl Interface
529 | | ... | ${dut2} | ${dut2_if2} | ip4 | ${table_idx}
530 | | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
531 | | ... | ${binary_max} | ${traffic_profile}
532 | | ... | ${min_rate} | ${max_rate} | ${threshold}
533
534 | tc14-64B-4t4c-ethip4-ip4base-iacldstbase-pdrdisc
535 | | [Documentation]
536 | | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
537 | | ... | 4 threads, 4 phy cores, 2 receive queue per NIC port. [Ver] Find PDR
538 | | ... | for 64 Byte frames using binary search start at 10GE linerate,
539 | | ... | step 100kpps, LT=0.5%.
540 | | [Tags] | 64B | 4T4C | MTHREAD | PDRDISC | SKIP_PATCH
541 | | ${framesize}= | Set Variable | ${64}
542 | | ${min_rate}= | Set Variable | ${100000}
543 | | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
544 | | ${binary_min}= | Set Variable | ${min_rate}
545 | | ${binary_max}= | Set Variable | ${max_rate}
546 | | ${threshold}= | Set Variable | ${min_rate}
547 | | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
548 | | And Add PCI devices to DUTs in 3-node single link topology
549 | | And Add no multi seg to all DUTs
550 | | And Apply startup configuration on all VPP DUTs
551 | | When Initialize IPv4 forwarding in 3-node circular topology
552 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
553 | | ... | ${dut1} | ip4 | dst
554 | | And Vpp Configures Classify Session L3
555 | | ... | ${dut1} | permit | ${table_idx} | ${skip_n} | ${match_n}
556 | | ... | ip4 | dst | 20.20.20.2
557 | | And Vpp Enable Input Acl Interface
558 | | ... | ${dut1} | ${dut1_if1} | ip4 | ${table_idx}
559 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
560 | | ... | ${dut2} | ip4 | dst
561 | | And Vpp Configures Classify Session L3
562 | | ... | ${dut2} | permit | ${table_idx} | ${skip_n} | ${match_n}
563 | | ... | ip4 | dst | 10.10.10.2
564 | | And Vpp Enable Input Acl Interface
565 | | ... | ${dut2} | ${dut2_if2} | ip4 | ${table_idx}
566 | | Then Find PDR using binary search and pps | ${framesize} | ${binary_min}
567 | | ... | ${binary_max} | ${traffic_profile}
568 | | ... | ${min_rate} | ${max_rate} | ${threshold}
569 | | ... | ${perf_pdr_loss_acceptance} | ${perf_pdr_loss_acceptance_type}
570
571 | tc15-1518B-4t4c-ethip4-ip4base-iacldstbase-ndrdisc
572 | | [Documentation]
573 | | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
574 | | ... | 4 threads, 4 phy cores, 2 receive queue per NIC port. [Ver] Find NDR
575 | | ... | for 1518 Byte frames using binary search start at 10GE linerate,
576 | | ... | step 10kpps.
577 | | [Tags] | 1518B | 4T4C | MTHREAD | NDRDISC | SKIP_PATCH
578 | | ${framesize}= | Set Variable | ${1518}
579 | | ${min_rate}= | Set Variable | ${10000}
580 | | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
581 | | ${binary_min}= | Set Variable | ${min_rate}
582 | | ${binary_max}= | Set Variable | ${max_rate}
583 | | ${threshold}= | Set Variable | ${min_rate}
584 | | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
585 | | And Add PCI devices to DUTs in 3-node single link topology
586 | | And Add no multi seg to all DUTs
587 | | And Apply startup configuration on all VPP DUTs
588 | | When Initialize IPv4 forwarding in 3-node circular topology
589 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
590 | | ... | ${dut1} | ip4 | dst
591 | | And Vpp Configures Classify Session L3
592 | | ... | ${dut1} | permit | ${table_idx} | ${skip_n} | ${match_n}
593 | | ... | ip4 | dst | 20.20.20.2
594 | | And Vpp Enable Input Acl Interface
595 | | ... | ${dut1} | ${dut1_if1} | ip4 | ${table_idx}
596 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
597 | | ... | ${dut2} | ip4 | dst
598 | | And Vpp Configures Classify Session L3
599 | | ... | ${dut2} | permit | ${table_idx} | ${skip_n} | ${match_n}
600 | | ... | ip4 | dst | 10.10.10.2
601 | | And Vpp Enable Input Acl Interface
602 | | ... | ${dut2} | ${dut2_if2} | ip4 | ${table_idx}
603 | | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
604 | | ... | ${binary_max} | ${traffic_profile}
605 | | ... | ${min_rate} | ${max_rate} | ${threshold}
606
607 | tc16-1518B-4t4c-ethip4-ip4base-iacldstbase-pdrdisc
608 | | [Documentation]
609 | | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
610 | | ... | 4 threads, 4 phy cores, 2 receive queue per NIC port. [Ver] Find PDR
611 | | ... | for 1518 Byte frames using binary search start at 10GE linerate,
612 | | ... | step 10kpps, LT=0.5%.
613 | | [Tags] | 1518B | 4T4C | MTHREAD | PDRDISC | SKIP_PATCH
614 | | ${framesize}= | Set Variable | ${1518}
615 | | ${min_rate}= | Set Variable | ${10000}
616 | | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
617 | | ${binary_min}= | Set Variable | ${min_rate}
618 | | ${binary_max}= | Set Variable | ${max_rate}
619 | | ${threshold}= | Set Variable | ${min_rate}
620 | | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
621 | | And Add PCI devices to DUTs in 3-node single link topology
622 | | And Add no multi seg to all DUTs
623 | | And Apply startup configuration on all VPP DUTs
624 | | When Initialize IPv4 forwarding in 3-node circular topology
625 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
626 | | ... | ${dut1} | ip4 | dst
627 | | And Vpp Configures Classify Session L3
628 | | ... | ${dut1} | permit | ${table_idx} | ${skip_n} | ${match_n}
629 | | ... | ip4 | dst | 20.20.20.2
630 | | And Vpp Enable Input Acl Interface
631 | | ... | ${dut1} | ${dut1_if1} | ip4 | ${table_idx}
632 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
633 | | ... | ${dut2} | ip4 | dst
634 | | And Vpp Configures Classify Session L3
635 | | ... | ${dut2} | permit | ${table_idx} | ${skip_n} | ${match_n}
636 | | ... | ip4 | dst | 10.10.10.2
637 | | And Vpp Enable Input Acl Interface
638 | | ... | ${dut2} | ${dut2_if2} | ip4 | ${table_idx}
639 | | Then Find PDR using binary search and pps | ${framesize} | ${binary_min}
640 | | ... | ${binary_max} | ${traffic_profile}
641 | | ... | ${min_rate} | ${max_rate} | ${threshold}
642 | | ... | ${perf_pdr_loss_acceptance} | ${perf_pdr_loss_acceptance_type}
643
644 | tc17-9000B-4t4c-ethip4-ip4base-iacldstbase-ndrdisc
645 | | [Documentation]
646 | | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
647 | | ... | 4 threads, 4 phy cores, 2 receive queue per NIC port. [Ver] Find NDR
648 | | ... | for 9000 Byte frames using binary search start at 10GE linerate,
649 | | ... | step 5kpps.
650 | | [Tags] | 9000B | 4T4C | MTHREAD | NDRDISC | SKIP_PATCH
651 | | ${framesize}= | Set Variable | ${9000}
652 | | ${min_rate}= | Set Variable | ${10000}
653 | | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
654 | | ${binary_min}= | Set Variable | ${min_rate}
655 | | ${binary_max}= | Set Variable | ${max_rate}
656 | | ${threshold}= | Set Variable | ${min_rate}
657 | | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
658 | | And Add PCI devices to DUTs in 3-node single link topology
659 | | And Apply startup configuration on all VPP DUTs
660 | | When Initialize IPv4 forwarding in 3-node circular topology
661 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
662 | | ... | ${dut1} | ip4 | dst
663 | | And Vpp Configures Classify Session L3
664 | | ... | ${dut1} | permit | ${table_idx} | ${skip_n} | ${match_n}
665 | | ... | ip4 | dst | 20.20.20.2
666 | | And Vpp Enable Input Acl Interface
667 | | ... | ${dut1} | ${dut1_if1} | ip4 | ${table_idx}
668 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
669 | | ... | ${dut2} | ip4 | dst
670 | | And Vpp Configures Classify Session L3
671 | | ... | ${dut2} | permit | ${table_idx} | ${skip_n} | ${match_n}
672 | | ... | ip4 | dst | 10.10.10.2
673 | | And Vpp Enable Input Acl Interface
674 | | ... | ${dut2} | ${dut2_if2} | ip4 | ${table_idx}
675 | | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
676 | | ... | ${binary_max} | ${traffic_profile}
677 | | ... | ${min_rate} | ${max_rate} | ${threshold}
678
679 | tc18-9000B-4t4c-ethip4-ip4base-iacldstbase-pdrdisc
680 | | [Documentation]
681 | | ... | [Cfg] DUT runs IPv4 routing and whitelist filters config with \
682 | | ... | 4 threads, 4 phy cores, 2 receive queue per NIC port. [Ver] Find PDR
683 | | ... | for 9000 Byte frames using binary search start at 10GE linerate,
684 | | ... | step 5kpps, LT=0.5%.
685 | | [Tags] | 9000B | 4T4C | MTHREAD | PDRDISC | SKIP_PATCH
686 | | ${framesize}= | Set Variable | ${9000}
687 | | ${min_rate}= | Set Variable | ${10000}
688 | | ${max_rate}= | Calculate pps | ${s_limit} | ${framesize}
689 | | ${binary_min}= | Set Variable | ${min_rate}
690 | | ${binary_max}= | Set Variable | ${max_rate}
691 | | ${threshold}= | Set Variable | ${min_rate}
692 | | Given Add '4' worker threads and '2' rxqueues in 3-node single-link circular topology
693 | | And Add PCI devices to DUTs in 3-node single link topology
694 | | And Apply startup configuration on all VPP DUTs
695 | | When Initialize IPv4 forwarding in 3-node circular topology
696 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
697 | | ... | ${dut1} | ip4 | dst
698 | | And Vpp Configures Classify Session L3
699 | | ... | ${dut1} | permit | ${table_idx} | ${skip_n} | ${match_n}
700 | | ... | ip4 | dst | 20.20.20.2
701 | | And Vpp Enable Input Acl Interface
702 | | ... | ${dut1} | ${dut1_if1} | ip4 | ${table_idx}
703 | | ${table_idx} | ${skip_n} | ${match_n}= | And Vpp Creates Classify Table L3
704 | | ... | ${dut2} | ip4 | dst
705 | | And Vpp Configures Classify Session L3
706 | | ... | ${dut2} | permit | ${table_idx} | ${skip_n} | ${match_n}
707 | | ... | ip4 | dst | 10.10.10.2
708 | | And Vpp Enable Input Acl Interface
709 | | ... | ${dut2} | ${dut2_if2} | ip4 | ${table_idx}
710 | | Then Find PDR using binary search and pps | ${framesize} | ${binary_min}
711 | | ... | ${binary_max} | ${traffic_profile}
712 | | ... | ${min_rate} | ${max_rate} | ${threshold}
713 | | ... | ${perf_pdr_loss_acceptance} | ${perf_pdr_loss_acceptance_type}