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