ofproto: Allow the use of the OpenFlow 1.4 protocol
[sliver-openvswitch.git] / vswitchd / vswitch.ovsschema
1 {"name": "Open_vSwitch",
2  "version": "7.4.0",
3  "cksum": "2387737815 20431",
4  "tables": {
5    "Open_vSwitch": {
6      "columns": {
7        "bridges": {
8          "type": {"key": {"type": "uuid",
9                           "refTable": "Bridge"},
10                   "min": 0, "max": "unlimited"}},
11        "manager_options": {
12          "type": {"key": {"type": "uuid",
13                           "refTable": "Manager"},
14                   "min": 0, "max": "unlimited"}},
15        "ssl": {
16          "type": {"key": {"type": "uuid",
17                           "refTable": "SSL"},
18                   "min": 0, "max": 1}},
19        "other_config": {
20          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
21        "external_ids": {
22          "type": {"key": "string", "value": "string",
23                   "min": 0, "max": "unlimited"}},
24        "next_cfg": {
25          "type": "integer"},
26        "cur_cfg": {
27          "type": "integer"},
28        "statistics": {
29          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
30          "ephemeral": true},
31        "ovs_version": {
32          "type": {"key": {"type": "string"},
33                   "min": 0, "max": 1}},
34        "db_version": {
35          "type": {"key": {"type": "string"},
36                   "min": 0, "max": 1}},
37        "system_type": {
38          "type": {"key": {"type": "string"},
39                   "min": 0, "max": 1}},
40        "system_version": {
41          "type": {"key": {"type": "string"},
42                   "min": 0, "max": 1}}},
43      "isRoot": true,
44      "maxRows": 1},
45    "Bridge": {
46      "columns": {
47        "name": {
48          "type": "string",
49          "mutable": false},
50        "datapath_type": {
51          "type": "string"},
52        "datapath_id": {
53          "type": {"key": "string", "min": 0, "max": 1},
54          "ephemeral": true},
55        "stp_enable": {
56          "type": "boolean"},
57        "ports": {
58          "type": {"key": {"type": "uuid",
59                           "refTable": "Port"},
60                   "min": 0, "max": "unlimited"}},
61        "mirrors": {
62          "type": {"key": {"type": "uuid",
63                           "refTable": "Mirror"},
64                   "min": 0, "max": "unlimited"}},
65        "netflow": {
66          "type": {"key": {"type": "uuid",
67                           "refTable": "NetFlow"},
68                   "min": 0, "max": 1}},
69        "sflow": {
70          "type": {"key": {"type": "uuid",
71                           "refTable": "sFlow"},
72                   "min": 0, "max": 1}},
73        "ipfix": {
74          "type": {"key": {"type": "uuid",
75                           "refTable": "IPFIX"},
76                   "min": 0, "max": 1}},
77        "controller": {
78          "type": {"key": {"type": "uuid",
79                           "refTable": "Controller"},
80                   "min": 0, "max": "unlimited"}},
81        "protocols": {
82          "type": {"key": {"type": "string",
83            "enum": ["set", ["OpenFlow10",
84                             "OpenFlow11",
85                             "OpenFlow12",
86                             "OpenFlow13",
87                             "OpenFlow14"]]},
88            "min": 0, "max": "unlimited"}},
89        "fail_mode": {
90          "type": {"key": {"type": "string",
91                           "enum": ["set", ["standalone", "secure"]]},
92                   "min": 0, "max": 1}},
93        "status": {
94          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
95          "ephemeral": true},
96        "other_config": {
97          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
98        "external_ids": {
99          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
100        "flood_vlans": {
101          "type": {"key": {"type": "integer",
102                           "minInteger": 0,
103                           "maxInteger": 4095},
104                   "min": 0, "max": 4096}},
105        "flow_tables": {
106          "type": {"key": {"type": "integer",
107                           "minInteger": 0,
108                           "maxInteger": 254},
109                   "value": {"type": "uuid",
110                             "refTable": "Flow_Table"},
111                   "min": 0, "max": "unlimited"}}},
112      "indexes": [["name"]]},
113    "Port": {
114      "columns": {
115        "name": {
116          "type": "string",
117          "mutable": false},
118        "interfaces": {
119          "type": {"key": {"type": "uuid",
120                           "refTable": "Interface"},
121                   "min": 1, "max": "unlimited"}},
122        "trunks": {
123          "type": {"key": {"type": "integer",
124                           "minInteger": 0,
125                           "maxInteger": 4095},
126                   "min": 0, "max": 4096}},
127        "tag": {
128          "type": {"key": {"type": "integer",
129                           "minInteger": 0,
130                           "maxInteger": 4095},
131                   "min": 0, "max": 1}},
132        "vlan_mode": {
133          "type": {"key": {"type": "string",
134            "enum": ["set", ["trunk", "access", "native-tagged", "native-untagged"]]},
135          "min": 0, "max": 1}},
136        "qos": {
137          "type": {"key": {"type": "uuid",
138                           "refTable": "QoS"},
139                   "min": 0, "max": 1}},
140        "mac": {
141          "type": {"key": {"type": "string"},
142                   "min": 0, "max": 1}},
143        "bond_mode": {
144          "type": {"key": {"type": "string",
145            "enum": ["set", ["balance-tcp", "balance-slb", "active-backup"]]},
146          "min": 0, "max": 1}},
147        "lacp": {
148          "type": {"key": {"type": "string",
149            "enum": ["set", ["active", "passive", "off"]]},
150          "min": 0, "max": 1}},
151        "bond_updelay": {
152          "type": "integer"},
153        "bond_downdelay": {
154          "type": "integer"},
155        "bond_fake_iface": {
156          "type": "boolean"},
157        "fake_bridge": {
158          "type": "boolean"},
159        "status": {
160          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
161          "ephemeral": true},
162        "statistics": {
163          "type": {"key": "string", "value": "integer", "min": 0, "max": "unlimited"},
164          "ephemeral": true},
165        "other_config": {
166          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
167        "external_ids": {
168          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}}},
169      "indexes": [["name"]]},
170    "Interface": {
171      "columns": {
172        "name": {
173          "type": "string",
174          "mutable": false},
175        "type": {
176          "type": "string"},
177        "options": {
178          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
179        "ingress_policing_rate": {
180          "type": {"key": {"type": "integer",
181                           "minInteger": 0}}},
182        "ingress_policing_burst": {
183          "type": {"key": {"type": "integer",
184                           "minInteger": 0}}},
185        "mac_in_use": {
186          "type": {"key": {"type": "string"},
187                   "min": 0, "max": 1},
188                   "ephemeral": true},
189        "mac": {
190          "type": {"key": {"type": "string"},
191                   "min": 0, "max": 1}},
192        "ifindex": {
193          "type": {
194            "key": {"type": "integer",
195                    "minInteger": 0,
196                    "maxInteger": 4294967295},
197            "min": 0,
198            "max": 1},
199          "ephemeral": true},
200        "external_ids": {
201          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
202        "ofport": {
203          "type": {"key": "integer", "min": 0, "max": 1}},
204        "ofport_request": {
205          "type": {
206            "key": {"type": "integer",
207                    "minInteger": 1,
208                    "maxInteger": 65279},
209            "min": 0,
210            "max": 1}},
211        "bfd": {
212            "type": {"key": "string", "value": "string",
213                "min": 0, "max": "unlimited"}},
214        "bfd_status": {
215            "type": {"key": "string", "value": "string",
216                "min": 0, "max": "unlimited"}},
217        "cfm_mpid": {
218          "type": {
219            "key": {"type": "integer"},
220            "min": 0,
221            "max": 1}},
222        "cfm_remote_mpids": {
223          "type": {
224            "key": {"type": "integer"},
225            "min": 0,
226            "max": "unlimited"},
227          "ephemeral": true},
228        "cfm_flap_count": {
229          "type": {
230            "key": {"type": "integer"},
231            "min": 0,
232            "max": 1}},
233        "cfm_fault": {
234          "type": {
235            "key": { "type": "boolean"},
236            "min": 0,
237            "max": 1},
238          "ephemeral": true},
239        "cfm_fault_status": {
240          "type": {
241            "key": "string", "min": 0, "max": "unlimited"},
242            "ephemeral": true},
243        "cfm_remote_opstate": {
244          "type": {"key": {"type": "string",
245                           "enum": ["set", ["up", "down"]]},
246                   "min": 0, "max": 1},
247          "ephemeral": true},
248        "cfm_health": {
249          "type": {"key": {"type": "integer",
250                           "minInteger": 0,
251                           "maxInteger": 100},
252                   "min": 0, "max": 1},
253            "ephemeral": true},
254        "lacp_current": {
255          "type": {"key": {"type": "boolean"},
256                   "min": 0, "max": 1},
257          "ephemeral": true},
258        "other_config": {
259          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
260        "statistics": {
261          "type": {"key": "string", "value": "integer", "min": 0, "max": "unlimited"},
262          "ephemeral": true},
263        "status": {
264          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
265          "ephemeral": true},
266        "admin_state": {
267          "type": {"key": {"type": "string",
268                           "enum": ["set", ["up", "down"]]},
269                   "min": 0, "max": 1},
270          "ephemeral": true},
271        "link_state": {
272          "type": {"key": {"type": "string",
273                           "enum": ["set", ["up", "down"]]},
274                   "min": 0, "max": 1},
275          "ephemeral": true},
276        "link_resets": {
277          "type": {"key": {"type": "integer"},
278                   "min": 0, "max": 1},
279          "ephemeral": true},
280        "link_speed": {
281          "type": {"key": "integer", "min": 0, "max": 1},
282          "ephemeral": true},
283        "duplex": {
284          "type": {"key": {"type": "string",
285                           "enum": ["set", ["half", "full"]]},
286                   "min": 0, "max": 1},
287          "ephemeral": true},
288        "mtu": {
289          "type": {"key": "integer", "min": 0, "max": 1},
290          "ephemeral": true}},
291      "indexes": [["name"]]},
292    "Flow_Table": {
293      "columns": {
294        "name": {
295          "type": {"key": "string", "min": 0, "max": 1}},
296        "flow_limit": {
297          "type": {"key": {"type": "integer", "minInteger": 0},
298                   "min": 0, "max": 1}},
299        "overflow_policy": {
300          "type": {"key": {"type": "string",
301                           "enum": ["set", ["refuse", "evict"]]},
302                   "min": 0, "max": 1}},
303        "groups": {
304          "type": {"key": "string", "min": 0, "max": "unlimited"}},
305        "prefixes": {
306          "type": {"key": "string", "min": 0, "max": 3}}}},
307    "QoS": {
308      "columns": {
309        "type": {
310          "type": "string"},
311        "queues": {
312          "type": {"key": {"type": "integer",
313                           "minInteger": 0,
314                           "maxInteger": 4294967295},
315                   "value": {"type": "uuid",
316                             "refTable": "Queue"},
317                   "min": 0, "max": "unlimited"}},
318        "other_config": {
319          "type": {"key": "string", "value": "string",
320                   "min": 0, "max": "unlimited"}},
321        "external_ids": {
322          "type": {"key": "string", "value": "string",
323                   "min": 0, "max": "unlimited"}}},
324      "isRoot": true},
325    "Queue": {
326      "columns": {
327        "dscp": {
328          "type": {"key": {"type": "integer",
329                           "minInteger": 0,
330                           "maxInteger": 63},
331                   "min": 0, "max": 1}},
332        "other_config": {
333          "type": {"key": "string", "value": "string",
334                   "min": 0, "max": "unlimited"}},
335        "external_ids": {
336          "type": {"key": "string", "value": "string",
337                   "min": 0, "max": "unlimited"}}},
338      "isRoot": true},
339    "Mirror": {
340      "columns": {
341        "name": {
342          "type": "string"},
343        "select_all": {
344          "type": "boolean"},
345        "select_src_port": {
346          "type": {"key": {"type": "uuid",
347                           "refTable": "Port",
348                           "refType": "weak"},
349                    "min": 0, "max": "unlimited"}},
350        "select_dst_port": {
351          "type": {"key": {"type": "uuid",
352                           "refTable": "Port",
353                           "refType": "weak"},
354                    "min": 0, "max": "unlimited"}},
355        "select_vlan": {
356          "type": {"key": {"type": "integer",
357                           "minInteger": 0,
358                           "maxInteger": 4095},
359                   "min": 0, "max": 4096}},
360        "output_port": {
361          "type": {"key": {"type": "uuid",
362                           "refTable": "Port",
363                           "refType": "weak"},
364                   "min": 0, "max": 1}},
365        "output_vlan": {
366          "type": {"key": {"type": "integer",
367                           "minInteger": 1,
368                           "maxInteger": 4095},
369                   "min": 0, "max": 1}},
370        "statistics": {
371          "type": {"key": "string", "value": "integer",
372                   "min": 0, "max": "unlimited"},
373          "ephemeral": true},
374        "external_ids": {
375          "type": {"key": "string", "value": "string",
376                   "min": 0, "max": "unlimited"}}}},
377    "NetFlow": {
378      "columns": {
379        "targets": {
380          "type": {"key": {"type": "string"},
381                   "min": 1, "max": "unlimited"}},
382        "engine_type": {
383          "type": {"key": {"type": "integer",
384                           "minInteger": 0,
385                           "maxInteger": 255},
386                   "min": 0, "max": 1}},
387        "engine_id": {
388          "type": {"key": {"type": "integer",
389                           "minInteger": 0,
390                           "maxInteger": 255},
391                   "min": 0, "max": 1}},
392        "add_id_to_interface": {
393          "type": "boolean"},
394        "active_timeout": {
395          "type": {"key": {"type": "integer",
396                           "minInteger": -1}}},
397        "external_ids": {
398          "type": {"key": "string", "value": "string",
399                   "min": 0, "max": "unlimited"}}}},
400    "sFlow": {
401      "columns": {
402        "targets": {
403          "type": {"key": "string", "min": 1, "max": "unlimited"}},
404        "sampling": {
405          "type": {"key": "integer", "min": 0, "max": 1}},
406        "polling": {
407          "type": {"key": "integer", "min": 0, "max": 1}},
408        "header": {
409          "type": {"key": "integer", "min": 0, "max": 1}},
410        "agent": {
411          "type": {"key": "string", "min": 0, "max": 1}},
412        "external_ids": {
413          "type": {"key": "string", "value": "string",
414                   "min": 0, "max": "unlimited"}}}},
415    "IPFIX": {
416      "columns": {
417        "targets": {
418          "type": {"key": "string", "min": 0, "max": "unlimited"}},
419        "sampling": {
420          "type": {"key": {"type": "integer",
421                           "minInteger": 1,
422                           "maxInteger": 4294967295},
423                   "min": 0, "max": 1}},
424        "obs_domain_id": {
425          "type": {"key": {"type": "integer",
426                           "minInteger": 0,
427                           "maxInteger": 4294967295},
428                   "min": 0, "max": 1}},
429        "obs_point_id": {
430          "type": {"key": {"type": "integer",
431                           "minInteger": 0,
432                           "maxInteger": 4294967295},
433                   "min": 0, "max": 1}},
434        "cache_active_timeout": {
435          "type": {"key": {"type": "integer",
436                           "minInteger": 0,
437                           "maxInteger": 4200},
438                   "min": 0, "max": 1}},
439        "cache_max_flows": {
440          "type": {"key": {"type": "integer",
441                           "minInteger": 0,
442                           "maxInteger": 4294967295},
443                   "min": 0, "max": 1}},
444        "external_ids": {
445          "type": {"key": "string", "value": "string",
446                   "min": 0, "max": "unlimited"}}}},
447    "Flow_Sample_Collector_Set": {
448      "columns": {
449        "id": {
450          "type": {"key": {"type": "integer",
451                           "minInteger": 0,
452                           "maxInteger": 4294967295},
453                   "min": 1, "max": 1}},
454        "bridge": {
455          "type": {"key": {"type": "uuid",
456                           "refTable": "Bridge"},
457                   "min": 1, "max": 1}},
458        "ipfix": {
459          "type": {"key": {"type": "uuid",
460                           "refTable": "IPFIX"},
461                   "min": 0, "max": 1}},
462        "external_ids": {
463          "type": {"key": "string", "value": "string",
464                   "min": 0, "max": "unlimited"}}},
465      "isRoot": true,
466      "indexes": [["id", "bridge"]]},
467    "Controller": {
468      "columns": {
469        "target": {
470          "type": "string"},
471        "max_backoff": {
472          "type": {"key": {"type": "integer",
473                           "minInteger": 1000},
474                   "min": 0, "max": 1}},
475        "inactivity_probe": {
476          "type": {"key": "integer", "min": 0, "max": 1}},
477        "connection_mode": {
478          "type": {"key": {"type": "string",
479                   "enum": ["set", ["in-band", "out-of-band"]]},
480                   "min": 0, "max": 1}},
481        "local_ip": {
482          "type": {"key": {"type": "string"},
483                   "min": 0, "max": 1}},
484        "local_netmask": {
485          "type": {"key": {"type": "string"},
486                   "min": 0, "max": 1}},
487        "local_gateway": {
488          "type": {"key": {"type": "string"},
489                   "min": 0, "max": 1}},
490        "enable_async_messages": {
491          "type": {"key": {"type": "boolean"},
492                   "min": 0, "max": 1}},
493        "controller_rate_limit": {
494          "type": {"key": {"type": "integer",
495                           "minInteger": 100},
496                   "min": 0, "max": 1}},
497        "controller_burst_limit": {
498          "type": {"key": {"type": "integer",
499                           "minInteger": 25},
500                   "min": 0, "max": 1}},
501        "other_config": {
502          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
503        "external_ids": {
504          "type": {"key": "string", "value": "string",
505                   "min": 0, "max": "unlimited"}},
506        "is_connected": {
507          "type": "boolean",
508          "ephemeral": true},
509        "role": {
510          "type": {"key": {"type": "string",
511                           "enum": ["set", ["other", "master", "slave"]]},
512                   "min": 0, "max": 1},
513          "ephemeral": true},
514        "status": {
515          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
516          "ephemeral": true}}},
517    "Manager": {
518      "columns": {
519        "target": {
520          "type": "string"},
521        "max_backoff": {
522          "type": {"key": {"type": "integer",
523                           "minInteger": 1000},
524                   "min": 0, "max": 1}},
525        "inactivity_probe": {
526          "type": {"key": "integer", "min": 0, "max": 1}},
527        "connection_mode": {
528          "type": {"key": {"type": "string",
529                   "enum": ["set", ["in-band", "out-of-band"]]},
530                   "min": 0, "max": 1}},
531        "other_config": {
532          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
533        "external_ids": {
534          "type": {"key": "string", "value": "string",
535                   "min": 0, "max": "unlimited"}},
536        "is_connected": {
537          "type": "boolean",
538          "ephemeral": true},
539        "status": {
540          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
541          "ephemeral": true}},
542      "indexes": [["target"]]},
543    "SSL": {
544      "columns": {
545        "private_key": {
546          "type": "string"},
547        "certificate": {
548          "type": "string"},
549        "ca_cert": {
550          "type": "string"},
551        "bootstrap_ca_cert": {
552          "type": "boolean"},
553        "external_ids": {
554          "type": {"key": "string", "value": "string",
555                   "min": 0, "max": "unlimited"}}},
556      "maxRows": 1}}}