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