blob: acdbe7c2454457f2eb7de5a6a070705cee3cdebe [file] [log] [blame]
Jian Li2907ad22016-05-12 23:08:54 -07001{
2 "type": "object",
3 "title": "flows",
4 "required": [
5 "flows"
6 ],
7 "properties": {
8 "flows": {
9 "type": "array",
10 "xml": {
11 "name": "flows",
12 "wrapped": true
13 },
14 "items": {
15 "type": "object",
16 "title": "flow",
17 "required": [
18 "id",
19 "tableId",
20 "appId",
21 "groupId",
22 "priority",
23 "timeout",
24 "isPermanent",
kalagesa42019542017-03-14 18:00:47 +053025 "deviceId",
26 "liveType"
Jian Li2907ad22016-05-12 23:08:54 -070027 ],
28 "properties": {
29 "id": {
30 "type": "string",
31 "example": "12103425214920339"
32 },
33 "tableId": {
34 "type": "integer",
35 "format": "int32",
36 "example": 3
37 },
38 "appId": {
39 "type": "string",
40 "example": "org.onosproject.core"
41 },
42 "groupId": {
43 "type": "integer",
44 "format": "int64",
45 "example": 0
46 },
47 "priority": {
48 "type": "integer",
49 "format": "int32",
50 "example": 40000
51 },
52 "timeout": {
53 "type": "integer",
54 "format": "int32",
55 "example": 0
56 },
57 "isPermanent": {
58 "type": "boolean",
59 "example": true
60 },
61 "deviceId": {
62 "type": "string",
63 "example": "of:0000000000000003"
64 },
kalagesa42019542017-03-14 18:00:47 +053065 "liveType": {
66 "type": "string",
67 "example": "UNKNOWN"
68 },
Jian Li2907ad22016-05-12 23:08:54 -070069 "treatment": {
70 "type": "object",
71 "title": "treatment",
72 "required": [
73 "instructions",
74 "deferred"
75 ],
76 "properties": {
77 "instructions": {
78 "type": "array",
79 "title": "treatment",
80 "required": [
81 "properties",
82 "port"
83 ],
84 "items": {
85 "type": "object",
86 "title": "instruction",
87 "required": [
88 "type",
89 "port"
90 ],
91 "properties": {
92 "type": {
93 "type": "string",
94 "example": "OUTPUT"
95 },
96 "port": {
97 "type": "string",
98 "example": "CONTROLLER"
99 }
100 }
101 }
102 },
103 "deferred": {
104 "type": "array",
105 "xml": {
106 "name": "deferred",
107 "wrapped": true
108 },
109 "items": {
110 "type": "string"
111 }
112 }
113 }
114 },
115 "selector": {
116 "type": "object",
117 "title": "selector",
118 "required": [
119 "criteria"
120 ],
121 "properties": {
122 "criteria": {
123 "type": "array",
124 "xml": {
125 "name": "criteria",
126 "wrapped": true
127 },
128 "items": {
129 "type": "object",
130 "title": "criteria",
131 "properties": {
132 "type": {
133 "type": "string",
134 "description": "Ethernet field name",
135 "example": "ETH_TYPE"
136 },
137 "ethType": {
138 "type": "int64",
139 "format": "int64",
140 "example": "0x88cc",
141 "description": "Ethernet frame type"
142 },
143 "mac": {
144 "type": "string",
145 "example": "00:00:11:00:00:01"
146 },
147 "port": {
148 "type": "int64",
149 "format": "int64",
150 "example": 1,
151 "description": "Match port"
152 },
153 "metadata": {
154 "type": "Hex16",
155 "format": "Hex16",
156 "example": "0xabcdL",
157 "description": "Metadata passed between tables"
158 },
159 "vlanId": {
160 "type": "uint16",
161 "format": "uint16",
162 "example": "0x1000"
163 },
164 "priority": {
165 "type": "int64",
166 "format": "int64",
167 "example": 1,
168 "description": "VLAN priority."
169 },
170 "ipDscp": {
171 "type": "byte",
172 "format": "byte",
173 "description": "IP DSCP (6 bits in ToS field)"
174 },
175 "ipEcn": {
176 "type": "byte",
177 "format": "byte",
178 "description": "IP ECN (2 bits in ToS field)."
179 },
180 "protocol": {
181 "type": "uint16",
182 "format": "uint16",
183 "example": 1,
184 "description": "IP protocol"
185 },
186 "ip": {
187 "type": "string",
188 "example": "10.1.1.0/24",
189 "description": "IP source address"
190 },
191 "tcpPort": {
192 "type": "integer",
193 "format": "uint16",
194 "example": 1,
195 "description": "TCP source address"
196 },
197 "udpPort": {
198 "type": "uint16",
199 "format": "uint16",
200 "example": 1,
201 "description": "UDP source address"
202 },
203 "sctpPort": {
204 "type": "uint16",
205 "format": "uint16",
206 "example": 1,
207 "description": "SCTP source address"
208 },
209 "icmpType": {
210 "type": "uint16",
211 "format": "uint16",
212 "example": 1,
213 "description": "Internet Control Message Protocol for IPV4 code (RFC0792)"
214 },
215 "icmpCode": {
216 "type": "uint16",
217 "format": "uint16",
218 "example": 1,
219 "description": "Internet Control Message Protocol for IPV4 code (RFC0792)"
220 },
221 "flowLabel": {
222 "type": "Hex16",
223 "format": "Hex16",
224 "example": "0xffffe",
225 "description": "IPv6 Flow Label (RFC 6437)"
226 },
227 "icmpv6Type": {
228 "type": "uint16",
229 "format": "uint16",
230 "example": 1,
231 "description": "Internet Control Message Protocol for IPV6 type (RFC2463)"
232 },
233 "icmpv6Code": {
234 "type": "uint16",
235 "format": "uint16",
236 "example": 1,
237 "description": "Internet Control Message Protocol for IPV6 code (RFC2463)"
238 },
239 "targetAddress": {
240 "type": "String",
241 "example": "10.1.1.0/24",
242 "description": "IPv6 Neighbor discovery target address"
243 },
244 "label": {
245 "type": "int32",
246 "format": "int32",
247 "example": 1,
248 "description": "MPLS label"
249 },
250 "exthdrFlags": {
251 "type": "int64",
252 "format": "int64",
253 "example": 1,
254 "description": "IPv6 extension header pseudo-field"
255 },
256 "lambda": {
257 "type": "int64",
258 "format": "int64",
259 "example": 1,
260 "description": "wavelength abstraction"
261 },
262 "gridType": {
263 "type": "String",
264 "example": "DWDM",
265 "description": "Type of wavelength grid"
266 },
267 "channelSpacing": {
268 "type": "int64",
269 "format": "int64",
270 "example": 100,
271 "description": "Optical channel spacing"
272 },
273 "spacingMultiplier": {
274 "type": "integer",
275 "format": "int64",
276 "example": 4,
277 "description": "Optical channel spacing multiplier"
278 },
279 "slotGranularity": {
280 "type": "int64",
281 "format": "int64",
282 "example": 8
283 },
284 "ochSignalId": {
285 "type": "integer",
286 "format": "int64",
287 "example": 1,
288 "description": "Optical channel signal ID"
289 },
290 "tunnelId": {
291 "type": "int64",
292 "format": "int64",
293 "example": 5,
294 "description": "Tunnel ID"
295 },
296 "ochSignalType": {
297 "type": "int64",
298 "format": "int64",
299 "example": 1,
300 "description": "Optical channel signal type"
301 },
302 "oduSignalId": {
303 "type": "int64",
304 "format": "int64",
305 "example": 1,
306 "description": "ODU (Optical channel Data Unit) signal ID."
307 },
308 "tributaryPortNumber": {
309 "type": "int64",
310 "format": "int64",
311 "example": 11,
312 "description": "OPU (Optical channel Payload Unit) port number."
313 },
314 "tributarySlotLen": {
315 "type": "int64",
316 "format": "int64",
317 "example": 80,
318 "description": "OPU (Optical channel Payload Unit) slot length."
319 },
320 "tributarySlotBitmap": {
321 "type": "array",
322 "title": "tributarySlotBitmap",
323 "description": "OPU (Optical channel Payload Unit) slot bitmap.",
324 "required": [
325 "byte",
326 "port"
327 ],
328 "items": {
329 "type": "byte",
330 "title": "byte",
331 "example": 1
332 }
333 },
334 "oduSignalType": {
335 "type": "int64",
336 "format": "int64",
337 "example": 4,
338 "description": "ODU (Optical channel Data Unit) signal type."
339 }
340 }
341 }
342 }
343 }
344 }
345 }
346 }
347 }
348 }
349}