integration: fix ovsdpdk_mq_pvp_rxqs_testpmd
[vswitchperf.git] / conf / 01_testcases.conf
1 # Copyright 2015-2018 Intel Corporation., Tieto
2 #
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
6 #
7 #   http://www.apache.org/licenses/LICENSE-2.0
8 #
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
14
15 # This file describes a list of testcases.  Each testcase is described as a
16 # dictionary in a list of dictionaries.
17 #
18 # The dictionary keys, their meanings and available values are:
19 #
20 # "Name": "phy2phy_burst",         # A human-readable string identifying the
21 #                                  # test.
22 # "Deployment": "p2p",             # One of the supported deployment scenarios.
23 # "Description": "Lorem ipsum..."  # Optional. A human-readable string
24 #                                  # describing the test.
25 # "Frame Modification": "vlan"     # One of the supported frame modifications:
26 #                                  # vlan, mpls, mac, dscp, ttl, ip_addr,
27 #                                  # ip_port.
28 # "Load": dictionary               # Optional. Configures background load
29 #                                  # during testcase execution.
30 #                                  # The tool used to generate load is
31 #                                  # defined  by LOADGEN configuration.
32 #                                  # Default setting of Dummy can be found in
33 #                                  # 07_loadgen.conf.
34 #   Description of "Load" dictionary keys, their meanings and available values:
35 #
36 #   "load": 0-100                  # percentage of cores which should be
37 #                                  # utilized by load generator
38 #                                  # e.g. load = 70%, detected cpu cores = 14 =>
39 #                                  # round(14*0.7)=10, i.e. 10 instances of load
40 #                                  # generator will be executed
41 #   "reserved": 0- (Default 0)     # Optional. Defines number of cores reserved
42 #                                  # for vsperf
43 #                                  # e.g. load = 80%, detected cpu cores = 14,
44 #                                  # reserved = 4 => round((14-4)*0.8)=8,
45 #                                  # i.e. 8 load gen. instances will be executed
46 #   "pattern" : "c"                # stress/stress-ng specific; Number of 'c',
47 #                                  # 'm' and 'i' defines ratio between cpu, mem
48 #                                  # and io workers respectively
49 #                                  # e.g. "ccccmmi" => ratio among workers types
50 #                                  # will be 3:2:1, so in case that 12 stress
51 #                                  # instances should be executed, then 6 cpu,
52 #                                  # 4 memory and 2 io workers will be executed
53 #   "load_memory": 0-100           # Optional. Defines percentage of the system
54 #                                  # memory, which should be utilized by memory
55 #                                  # workers (if they are part of "pattern").
56 #                                  # if not specified then default stress(-ng)
57 #                                  # value will be used
58 #   "options": ""                  # Optional. Additional command line options
59 #                                  # to be passed to the load generator.
60 # "vSwitch" : "OvsVanilla"         # Defines vSwitch to be used for test execution.
61 #                                  # It will override any VSWITCH option stated
62 #                                  # in configuration files or value specified
63 #                                  # on command line through --vswitch parameter.
64 # "VNF" : "QemuVirtioNet"          # Defines VNF to be used for test execution.
65 #                                  # It will override any VNF option stated
66 #                                  # in configuration files or value specified
67 #                                  # on command line through --vnf parameter.
68 # "Trafficgen" : "Dummy"           # Defines traffic generator to be used for test
69 #                                  # execution. It will override any VNF option
70 #                                  # stated in configuration files or value
71 #                                  # specified on command line through --trafficgen
72 #                                  # parameter.
73 # "Parameters" : {'TRAFFICGEN_PKT_SIZES' : (512,)},
74 #                                  # Dictionary with testcase specific configuration
75 #                                  # environment. Specified parameters will be modified
76 #                                  # before the test execution and their original values will
77 #                                  # be restored after TC finishes. This dictionary will
78 #                                  # override any values defined by TEST_PARAMS option
79 #                                  # stated in configuration files or values specified
80 #                                  # on command line through --test-params parameter.
81 #
82 # "TestSteps": []                  # Definition of detailed test steps.
83 #                                  # In case that this list is defined, then
84 #                                  # vsperf will execute defined test steps
85 #                                  # one by one. It can be used to configure
86 #                                  # vswitch, insert flows and transmit traffic.
87 #                                  # It is possible to refer to result of any
88 #                                  # previous step through #STEP[i][j] macro.
89 #                                  # Where i is a number of step (starts from 0)
90 #                                  # and j is index of result returned by step i.
91 # "Test Modifier": [FrameMod|Other],
92 # "Dependency": [Test_Case_Name |None],
93
94 #
95 # Generic performance TC definitions
96 #
97 PERFORMANCE_TESTS = [
98     {
99         "Name": "phy2phy_tput",
100         "Deployment": "p2p",
101         "Description": "LTD.Throughput.RFC2544.PacketLossRatio",
102         "Parameters" : {
103             "TRAFFIC" : {
104                 "traffic_type" : "rfc2544_throughput",
105             },
106         },
107     },
108     {
109         "Name": "phy2phy_forwarding",
110         "Deployment": "p2p",
111         "Description": "LTD.Forwarding.RFC2889.MaxForwardingRate",
112         "Parameters" : {
113             "TRAFFIC" : {
114                 "traffic_type" : "rfc2889_forwarding",
115             },
116         },
117     },
118     {
119         "Name": "phy2phy_learning",
120         "Deployment": "p2p",
121         "Description": "LTD.AddrLearning.RFC2889.AddrLearningRate",
122         "Parameters" : {
123             "TRAFFIC" : {
124                 "traffic_type" : "rfc2889_learning",
125             },
126         },
127     },
128     {
129         "Name": "phy2phy_caching",
130         "Deployment": "p2p",
131         "Description": "LTD.AddrCaching.RFC2889.AddrCachingCapacity",
132         "Parameters" : {
133             "TRAFFIC" : {
134                 "traffic_type" : "rfc2889_caching",
135             },
136         },
137     },
138     {
139         "Name": "back2back",
140         "Deployment": "p2p",
141         "Description": "LTD.Throughput.RFC2544.BackToBackFrames",
142         "Parameters" : {
143             "TRAFFIC" : {
144                 "traffic_type" : "rfc2544_back2back",
145             },
146         },
147     },
148     {
149         "Name": "phy2phy_tput_mod_vlan",
150         "Deployment": "p2p",
151         "Frame Modification": "vlan",
152         "Description": "LTD.Throughput.RFC2544.PacketLossRatioFrameModification",
153         "Parameters" : {
154             "TRAFFIC" : {
155                 "traffic_type" : "rfc2544_throughput",
156             },
157         },
158     },
159         {
160         "Name": "phy2phy_tput_mod_vlan_cont",
161         "Deployment": "p2p",
162         "Frame Modification": "vlan",
163         "Description": "Phy2Phy VLAN Continuous Stream",
164         "Parameters" : {
165             "TRAFFIC" : {
166                 "traffic_type" : "rfc2544_continuous",
167                 "frame_rate" : 100,
168             },
169         },
170     },
171     {
172         "Name": "phy2phy_cont",
173         "Deployment": "p2p",
174         "Description": "Phy2Phy Continuous Stream",
175         "Parameters" : {
176             "TRAFFIC" : {
177                 "traffic_type" : "rfc2544_continuous",
178                 "frame_rate" : 100,
179             },
180         },
181     },
182     {
183         "Name": "phy2phy_burst",
184         "Deployment": "p2p",
185         "Description": "Phy2Phy single burst of 1000 frames at 100% frame rate",
186         "Parameters" : {
187             "TRAFFIC" : {
188                 "traffic_type" : "burst",
189                 "frame_rate" : 100,
190                 "burst_size" : 1000,
191             },
192         },
193     },
194     {
195         "Name": "pvp_cont",
196         "Deployment": "pvp",
197         "Description": "PVP Continuous Stream",
198         "Parameters" : {
199             "TRAFFIC" : {
200                 "traffic_type" : "rfc2544_continuous",
201                 "frame_rate" : 100,
202             },
203         },
204     },
205     {
206         "Name": "pvvp_cont",
207         "Deployment": "pvvp",
208         "Description": "PVVP Continuous Stream",
209         "Parameters" : {
210             "TRAFFIC" : {
211                 "traffic_type" : "rfc2544_continuous",
212                 "frame_rate" : 100,
213             },
214         },
215     },
216     {
217         "Name": "pvpv_cont",
218         "Deployment": "pvpv",
219         "Description": "Two VMs in parallel with Continuous Stream",
220         "Parameters" : {
221             "TRAFFIC" : {
222                 "traffic_type" : "rfc2544_continuous",
223                 "frame_rate" : 100,
224             },
225         },
226     },
227     {
228         "Name": "phy2phy_scalability",
229         "Deployment": "p2p",
230         "Description": "LTD.Scalability.Flows.RFC2544.0PacketLoss",
231         "Parameters" : {
232             "TRAFFIC" : {
233                 "traffic_type" : "rfc2544_throughput",
234                 "multistream" : 8000,
235             },
236         },
237     },
238     {
239         "Name": "phy2phy_scalability_cont",
240         "Deployment": "p2p",
241         "Description": "Phy2Phy Scalability Continuous Stream",
242         "Parameters" : {
243             "TRAFFIC" : {
244                 "traffic_type" : "rfc2544_continuous",
245                 "frame_rate" : 100,
246                 "multistream" : 8000,
247             },
248         },
249     },
250     {
251         "Name": "pvp_tput",
252         "Deployment": "pvp",
253         "Description": "LTD.Throughput.RFC2544.PacketLossRatio",
254         "Parameters" : {
255             "TRAFFIC" : {
256                 "traffic_type" : "rfc2544_throughput",
257             },
258         },
259     },
260     {
261         "Name": "pvp_back2back",
262         "Deployment": "pvp",
263         "Description": "LTD.Throughput.RFC2544.BackToBackFrames",
264         "Parameters" : {
265             "TRAFFIC" : {
266                 "traffic_type" : "rfc2544_back2back",
267             },
268         },
269     },
270     {
271         "Name": "pvvp_tput",
272         "Collector": "cpu",
273         "Deployment": "pvvp",
274         "Description": "LTD.Throughput.RFC2544.PacketLossRatio",
275         "Parameters" : {
276             "TRAFFIC" : {
277                 "traffic_type" : "rfc2544_throughput",
278             },
279         },
280     },
281     {
282         "Name": "pvvp_back2back",
283         "Collector": "cpu",
284         "Deployment": "pvvp",
285         "Description": "LTD.Throughput.RFC2544.BackToBackFrames",
286         "Parameters" : {
287             "TRAFFIC" : {
288                 "traffic_type" : "rfc2544_back2back",
289             },
290         },
291     },
292     {
293         "Name": "phy2phy_cpu_load",
294         "Deployment": "p2p",
295         "Description": "LTD.CPU.RFC2544.0PacketLoss",
296         "Load" : {
297             "load" : 100,
298             "reserved" : 4,
299             "pattern" : "c",
300         },
301         "Parameters" : {
302             "LOADGEN" : "StressNg",
303             "TRAFFIC" : {
304                 "traffic_type" : "rfc2544_throughput",
305             },
306         },
307     },
308     {
309         "Name": "phy2phy_mem_load",
310         "Deployment": "p2p",
311         "Description": "LTD.Memory.RFC2544.0PacketLoss",
312         "Load" : {
313             "load" : 50,
314             "pattern" : "m",
315             "load_memory" : 80,
316         },
317         "Parameters" : {
318             "LOADGEN" : "StressNg",
319             "TRAFFIC" : {
320                 "traffic_type" : "rfc2544_throughput",
321             },
322         },
323     },
324     #
325     # Backward compatible definition of VPP TCs.
326     # It will be removed after CI reporting will be fixed to use
327     # default TCs for VPP reporting.
328     #
329     {
330         "Name": "phy2phy_tput_vpp",
331         "Deployment": "p2p",
332         "Description": "VPP: LTD.Throughput.RFC2544.PacketLossRatio",
333         "vSwitch" : "VppDpdkVhost",
334         "Parameters" : {
335             "TRAFFIC" : {
336                 "traffic_type" : "rfc2544_throughput",
337             },
338         },
339     },
340     {
341         "Name": "phy2phy_cont_vpp",
342         "Deployment": "p2p",
343         "Description": "VPP: Phy2Phy Continuous Stream",
344         "vSwitch" : "VppDpdkVhost",
345         "Parameters" : {
346             "TRAFFIC" : {
347                 "traffic_type" : "rfc2544_continuous",
348                 "frame_rate" : 100,
349             },
350         },
351     },
352     {
353         "Name": "phy2phy_back2back_vpp",
354         "Deployment": "p2p",
355         "Description": "VPP: LTD.Throughput.RFC2544.BackToBackFrames",
356         "vSwitch" : "VppDpdkVhost",
357         "Parameters" : {
358             "TRAFFIC" : {
359                 "traffic_type" : "rfc2544_back2back",
360             },
361         },
362     },
363     {
364         "Name": "pvp_tput_vpp",
365         "Deployment": "pvp",
366         "Description": "VPP: LTD.Throughput.RFC2544.PacketLossRatio",
367         "vSwitch" : "VppDpdkVhost",
368         "Parameters" : {
369             "TRAFFIC" : {
370                 "traffic_type" : "rfc2544_throughput",
371             },
372         },
373     },
374     {
375         "Name": "pvp_cont_vpp",
376         "Deployment": "pvp",
377         "Description": "VPP: PVP Continuous Stream",
378         "vSwitch" : "VppDpdkVhost",
379         "Parameters" : {
380             "TRAFFIC" : {
381                 "traffic_type" : "rfc2544_continuous",
382             },
383         },
384     },
385     {
386         "Name": "pvp_back2back_vpp",
387         "Deployment": "pvp",
388         "Description": "VPP: LTD.Throughput.RFC2544.BackToBackFrames",
389         "vSwitch" : "VppDpdkVhost",
390         "Parameters" : {
391             "TRAFFIC" : {
392                 "traffic_type" : "rfc2544_back2back",
393             },
394         },
395     },
396     {
397         "Name": "pvvp_tput_vpp",
398         "Deployment": "pvvp",
399         "Description": "VPP: LTD.Throughput.RFC2544.PacketLossRatio",
400         "vSwitch" : "VppDpdkVhost",
401         "Parameters" : {
402             "TRAFFIC" : {
403                 "traffic_type" : "rfc2544_throughput",
404             },
405         },
406     },
407     {
408         "Name": "pvvp_cont_vpp",
409         "Deployment": "pvvp",
410         "Description": "VPP: PVP Continuous Stream",
411         "vSwitch" : "VppDpdkVhost",
412         "Parameters" : {
413             "TRAFFIC" : {
414                 "traffic_type" : "rfc2544_continuous",
415             },
416         },
417     },
418     {
419         "Name": "pvvp_back2back_vpp",
420         "Deployment": "pvvp",
421         "Description": "VPP: LTD.Throughput.RFC2544.BackToBackFrames",
422         "vSwitch" : "VppDpdkVhost",
423         "Parameters" : {
424             "TRAFFIC" : {
425                 "traffic_type" : "rfc2544_back2back",
426             },
427         },
428     },
429 ]