1 # Copyright 2015-2016 Intel Corporation.
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
7 # http://www.apache.org/licenses/LICENSE-2.0
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.
15 # The 1st value of SUPPORTED_TUNNELING_PROTO is used as the default
16 # tunneling protocol for OP2P tests.
17 SUPPORTED_TUNNELING_PROTO = ['vxlan', 'gre', 'geneve']
19 # Required for OP2P tests
20 # "Tunnel Type": ["vxlan"|"gre"|"geneve"] # Tunnel Type defines tunneling protocol to use.
21 # # It can be overridden by cli option tunnel_type.
23 # # "vxlan" - iteration of destination MAC address
24 # # "gre" - iteration of destination IP address
25 # # "geneve" - iteration of destination UDP port
26 # # Default value is "vxlan".
28 # biDirectional testing for OP2P is not yet supported.
29 # biDirectional must be set to False.
31 # "TestSteps": [] # Definition of integration test steps.
32 # # In case that this list is defined, then
33 # # vsperf will execute defined test steps
34 # # one by one. It can be used to configure
35 # # vswitch, insert flows and transmit traffic.
36 # # It is possible to refer to result of any
37 # # previous step through #STEP[i][j] macro.
38 # # Where i is a number of step (starts from 0)
39 # # and j is index of result returned by step i.
43 "Name": "overlay_p2p_tput",
44 "Traffic Type": "rfc2544",
46 "biDirectional": False,
47 "Tunnel Type": SUPPORTED_TUNNELING_PROTO[0],
48 "Tunnel Operation": "encapsulation",
49 "Description": "Overlay Encapsulation Throughput RFC2544 Test",
52 "Name": "overlay_p2p_cont",
53 "Traffic Type": "continuous",
55 "biDirectional": False,
56 "Tunnel Type": SUPPORTED_TUNNELING_PROTO[0],
57 "Tunnel Operation": "encapsulation",
58 "Description": "Overlay Encapsulation Continuous Stream",
61 "Name": "overlay_p2p_decap_tput",
62 "Traffic Type": "rfc2544",
64 "biDirectional": False,
65 "Tunnel Type": SUPPORTED_TUNNELING_PROTO[0],
66 "Tunnel Operation": "decapsulation",
67 "Description": "Overlay Decapsulation Throughput RFC2544 Test",
70 "Name": "overlay_p2p_decap_cont",
71 "Traffic Type": "continuous",
73 "biDirectional": False,
74 "Tunnel Type": SUPPORTED_TUNNELING_PROTO[0],
75 "Tunnel Operation": "decapsulation",
76 "Description": "Overlay Decapsulation Continuous Stream",
79 "Name": "vswitch_add_del_bridge",
80 "Deployment": "clean",
81 "Description": "vSwitch - add and delete bridge",
83 ['vswitch', 'add_switch', 'int_br0'],
84 ['vswitch', 'del_switch', 'int_br0'],
88 "Name": "vswitch_add_del_bridges",
89 "Deployment": "clean",
90 "Description": "vSwitch - add and delete bridges",
92 ['vswitch', 'add_switch', 'int_br0'],
93 ['vswitch', 'add_switch', 'int_br1'],
94 ['vswitch', 'del_switch', 'int_br0'],
95 ['vswitch', 'del_switch', 'int_br1'],
99 "Name": "vswitch_add_del_phy_port",
100 "Deployment": "clean",
101 "Description": "vSwitch - add and delete physical port",
103 ['vswitch', 'add_switch', 'int_br0'],
104 ['vswitch', 'add_phy_port', 'int_br0'],
105 ['vswitch', 'del_port', 'int_br0', '#STEP[1][0]'],
106 ['vswitch', 'del_switch', 'int_br0'],
110 "Name": "vswitch_add_del_phy_ports",
111 "Deployment": "clean",
112 "Description": "vSwitch - add and delete physical ports",
114 ['vswitch', 'add_switch', 'int_br0'],
115 ['vswitch', 'add_phy_port', 'int_br0'],
116 ['vswitch', 'add_phy_port', 'int_br0'],
117 ['vswitch', 'del_port', 'int_br0', '#STEP[1][0]'],
118 ['vswitch', 'del_port', 'int_br0', '#STEP[2][0]'],
119 ['vswitch', 'del_switch', 'int_br0'],
123 "Name": "vswitch_add_del_vport",
124 "Deployment": "clean",
125 "Description": "vSwitch - add and delete virtual port",
127 ['vswitch', 'add_switch', 'int_br0'],
128 ['vswitch', 'add_vport', 'int_br0'],
129 ['vswitch', 'del_port', 'int_br0', '#STEP[1][0]'],
130 ['vswitch', 'del_switch', 'int_br0'],
134 "Name": "vswitch_add_del_vports",
135 "Deployment": "clean",
136 "Description": "vSwitch - add and delete virtual ports",
138 ['vswitch', 'add_switch', 'int_br0'],
139 ['vswitch', 'add_vport', 'int_br0'],
140 ['vswitch', 'add_vport', 'int_br0'],
141 ['vswitch', 'del_port', 'int_br0', '#STEP[1][0]'],
142 ['vswitch', 'del_port', 'int_br0', '#STEP[2][0]'],
143 ['vswitch', 'del_switch', 'int_br0'],
147 "Name": "vswitch_add_del_flow",
148 "Deployment": "clean",
149 "Description": "vSwitch - add and delete flow",
151 ['vswitch', 'add_switch', 'int_br0'],
152 ['vswitch', 'add_phy_port', 'int_br0'],
153 ['vswitch', 'add_phy_port', 'int_br0'],
154 ['vswitch', 'add_flow', 'int_br0', {'in_port': '#STEP[1][1]', 'actions': ['output:#STEP[2][1]'], 'idle_timeout': '0'}],
155 ['vswitch', 'del_flow', 'int_br0', {'in_port': '#STEP[1][1]'}],
156 ['vswitch', 'del_port', 'int_br0', '#STEP[1][0]'],
157 ['vswitch', 'del_port', 'int_br0', '#STEP[2][0]'],
158 ['vswitch', 'del_switch', 'int_br0'],
162 "Name": "vswitch_add_del_flows",
163 "Deployment": "clean",
164 "Description": "vSwitch - add and delete flows",
166 ['vswitch', 'add_switch', 'int_br0'],
167 ['vswitch', 'add_phy_port', 'int_br0'],
168 ['vswitch', 'add_phy_port', 'int_br0'],
169 ['vswitch', 'add_flow', 'int_br0', {'in_port': '#STEP[1][1]', 'actions': ['output:#STEP[2][1]'], 'idle_timeout': '0'}],
170 ['vswitch', 'add_flow', 'int_br0', {'in_port': '#STEP[2][1]', 'actions': ['output:#STEP[1][1]'], 'idle_timeout': '0'}],
171 ['vswitch', 'dump_flows', 'int_br0'],
172 ['vswitch', 'del_flow', 'int_br0', {'in_port': '#STEP[1][1]'}],
173 ['vswitch', 'del_flow', 'int_br0', {'in_port': '#STEP[2][1]'}],
174 ['vswitch', 'del_port', 'int_br0', '#STEP[1][0]'],
175 ['vswitch', 'del_port', 'int_br0', '#STEP[2][0]'],
176 ['vswitch', 'del_switch', 'int_br0'],
180 "Name": "vswitch_throughput",
181 "Deployment": "clean",
182 "Description": "vSwitch - configure switch and execute RFC2544 throughput test",
184 ['vswitch', 'add_switch', 'int_br0'],
185 ['vswitch', 'add_phy_port', 'int_br0'],
186 ['vswitch', 'add_phy_port', 'int_br0'],
187 ['vswitch', 'add_flow', 'int_br0', {'in_port': '#STEP[1][1]', 'actions': ['output:#STEP[2][1]'], 'idle_timeout': '0'}],
188 ['vswitch', 'add_flow', 'int_br0', {'in_port': '#STEP[2][1]', 'actions': ['output:#STEP[1][1]'], 'idle_timeout': '0'}],
189 ['trafficgen', 'send_traffic', {'traffic_type' : 'throughput', 'bidir' : True, 'frame_rate' : 100, 'multistream' : 0, 'stream_type' : 'L4'}],
190 ['vswitch', 'dump_flows', 'int_br0'],
191 ['vswitch', 'del_flow', 'int_br0', {'in_port': '#STEP[1][1]'}],
192 ['vswitch', 'del_flow', 'int_br0', {'in_port': '#STEP[2][1]'}],
193 ['vswitch', 'del_port', 'int_br0', '#STEP[1][0]'],
194 ['vswitch', 'del_port', 'int_br0', '#STEP[2][0]'],
195 ['vswitch', 'del_switch', 'int_br0'],
199 "Name": "vswitch_back2back",
200 "Deployment": "clean",
201 "Description": "vSwitch - configure switch and execute RFC2544 back2back test",
203 ['vswitch', 'add_switch', 'int_br0'],
204 ['vswitch', 'add_phy_port', 'int_br0'],
205 ['vswitch', 'add_phy_port', 'int_br0'],
206 ['vswitch', 'add_flow', 'int_br0', {'in_port': '#STEP[1][1]', 'actions': ['output:#STEP[2][1]'], 'idle_timeout': '0'}],
207 ['vswitch', 'add_flow', 'int_br0', {'in_port': '#STEP[2][1]', 'actions': ['output:#STEP[1][1]'], 'idle_timeout': '0'}],
208 ['trafficgen', 'send_traffic', {'traffic_type' : 'back2back', 'bidir' : True, 'frame_rate' : 100, 'multistream' : 0, 'stream_type' : 'L4'}],
209 ['vswitch', 'dump_flows', 'int_br0'],
210 ['vswitch', 'del_flow', 'int_br0', {'in_port': '#STEP[1][1]'}],
211 ['vswitch', 'del_flow', 'int_br0', {'in_port': '#STEP[2][1]'}],
212 ['vswitch', 'del_port', 'int_br0', '#STEP[1][0]'],
213 ['vswitch', 'del_port', 'int_br0', '#STEP[2][0]'],
214 ['vswitch', 'del_switch', 'int_br0'],
218 "Name": "vswitch_continuous",
219 "Deployment": "clean",
220 "Description": "vSwitch - configure switch and execute continuous stream test",
222 ['vswitch', 'add_switch', 'int_br0'],
223 ['vswitch', 'add_phy_port', 'int_br0'],
224 ['vswitch', 'add_phy_port', 'int_br0'],
225 ['vswitch', 'add_flow', 'int_br0', {'in_port': '#STEP[1][1]', 'actions': ['output:#STEP[2][1]'], 'idle_timeout': '0'}],
226 ['vswitch', 'add_flow', 'int_br0', {'in_port': '#STEP[2][1]', 'actions': ['output:#STEP[1][1]'], 'idle_timeout': '0'}],
227 ['trafficgen', 'send_traffic', {'traffic_type' : 'continuous', 'bidir' : True, 'frame_rate' : 100, 'multistream' : 0, 'stream_type' : 'L4'}],
228 ['vswitch', 'dump_flows', 'int_br0'],
229 ['vswitch', 'del_flow', 'int_br0', {'in_port': '#STEP[1][1]'}],
230 ['vswitch', 'del_flow', 'int_br0', {'in_port': '#STEP[2][1]'}],
231 ['vswitch', 'del_port', 'int_br0', '#STEP[1][0]'],
232 ['vswitch', 'del_port', 'int_br0', '#STEP[2][0]'],
233 ['vswitch', 'del_switch', 'int_br0'],