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