fd2bb4bf9e68430608cf733e0d89c2b424e1795a
[openvswitch] / vswitchd / vswitch.ovsschema
1 {"name": "Open_vSwitch",
2  "version": "6.11.1",
3  "cksum": "2684374538 17324",
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        "controller": {
74          "type": {"key": {"type": "uuid",
75                           "refTable": "Controller"},
76                   "min": 0, "max": "unlimited"}},
77        "protocols": {
78          "type": {"key": {"type": "string",
79            "enum": ["set", ["OpenFlow10", "OpenFlow12"]]},
80            "min": 0, "max": "unlimited"}},
81        "fail_mode": {
82          "type": {"key": {"type": "string",
83                           "enum": ["set", ["standalone", "secure"]]},
84                   "min": 0, "max": 1}},
85        "status": {
86          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
87          "ephemeral": true},
88        "other_config": {
89          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
90        "external_ids": {
91          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
92        "flood_vlans": {
93          "type": {"key": {"type": "integer",
94                           "minInteger": 0,
95                           "maxInteger": 4095},
96                   "min": 0, "max": 4096}},
97        "flow_tables": {
98          "type": {"key": {"type": "integer",
99                           "minInteger": 0,
100                           "maxInteger": 254},
101                   "value": {"type": "uuid",
102                             "refTable": "Flow_Table"},
103                   "min": 0, "max": "unlimited"}}},
104      "indexes": [["name"]]},
105    "Port": {
106      "columns": {
107        "name": {
108          "type": "string",
109          "mutable": false},
110        "interfaces": {
111          "type": {"key": {"type": "uuid",
112                           "refTable": "Interface"},
113                   "min": 1, "max": "unlimited"}},
114        "trunks": {
115          "type": {"key": {"type": "integer",
116                           "minInteger": 0,
117                           "maxInteger": 4095},
118                   "min": 0, "max": 4096}},
119        "tag": {
120          "type": {"key": {"type": "integer",
121                           "minInteger": 0,
122                           "maxInteger": 4095},
123                   "min": 0, "max": 1}},
124        "vlan_mode": {
125          "type": {"key": {"type": "string",
126            "enum": ["set", ["trunk", "access", "native-tagged", "native-untagged"]]},
127          "min": 0, "max": 1}},
128        "qos": {
129          "type": {"key": {"type": "uuid",
130                           "refTable": "QoS"},
131                   "min": 0, "max": 1}},
132        "mac": {
133          "type": {"key": {"type": "string"},
134                   "min": 0, "max": 1}},
135        "bond_mode": {
136          "type": {"key": {"type": "string",
137            "enum": ["set", ["balance-tcp", "balance-slb", "active-backup", "stable"]]},
138          "min": 0, "max": 1}},
139        "lacp": {
140          "type": {"key": {"type": "string",
141            "enum": ["set", ["active", "passive", "off"]]},
142          "min": 0, "max": 1}},
143        "bond_updelay": {
144          "type": "integer"},
145        "bond_downdelay": {
146          "type": "integer"},
147        "bond_fake_iface": {
148          "type": "boolean"},
149        "fake_bridge": {
150          "type": "boolean"},
151        "status": {
152          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
153          "ephemeral": true},
154        "statistics": {
155          "type": {"key": "string", "value": "integer", "min": 0, "max": "unlimited"},
156          "ephemeral": true},
157        "other_config": {
158          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
159        "external_ids": {
160          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}}},
161      "indexes": [["name"]]},
162    "Interface": {
163      "columns": {
164        "name": {
165          "type": "string",
166          "mutable": false},
167        "type": {
168          "type": "string"},
169        "options": {
170          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
171        "ingress_policing_rate": {
172          "type": {"key": {"type": "integer",
173                           "minInteger": 0}}},
174        "ingress_policing_burst": {
175          "type": {"key": {"type": "integer",
176                           "minInteger": 0}}},
177        "mac": {
178          "type": {"key": {"type": "string"},
179                   "min": 0, "max": 1}},
180        "external_ids": {
181          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
182        "ofport": {
183          "type": {"key": "integer", "min": 0, "max": 1},
184          "ephemeral": true},
185        "ofport_request": {
186          "type": {
187            "key": {"type": "integer",
188                    "minInteger": 1,
189                    "maxInteger": 65279},
190            "min": 0,
191            "max": 1}},
192        "cfm_mpid": {
193          "type": {
194            "key": {"type": "integer"},
195            "min": 0,
196            "max": 1}},
197        "cfm_remote_mpids": {
198          "type": {
199            "key": {"type": "integer"},
200            "min": 0,
201            "max": "unlimited"},
202          "ephemeral": true},
203        "cfm_fault": {
204          "type": {
205            "key": { "type": "boolean"},
206            "min": 0,
207            "max": 1},
208          "ephemeral": true},
209        "cfm_fault_status": {
210          "type": {
211            "key": "string", "min": 0, "max": "unlimited"},
212            "ephemeral": true},
213        "cfm_remote_opstate": {
214          "type": {"key": {"type": "string",
215                           "enum": ["set", ["up", "down"]]},
216                   "min": 0, "max": 1},
217          "ephemeral": true},
218        "cfm_health": {
219          "type": {"key": {"type": "integer",
220                           "minInteger": 0,
221                           "maxInteger": 100},
222                   "min": 0, "max": 1},
223            "ephemeral": true},
224        "lacp_current": {
225          "type": {"key": {"type": "boolean"},
226                   "min": 0, "max": 1},
227          "ephemeral": true},
228        "other_config": {
229          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
230        "statistics": {
231          "type": {"key": "string", "value": "integer", "min": 0, "max": "unlimited"},
232          "ephemeral": true},
233        "status": {
234          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
235          "ephemeral": true},
236        "admin_state": {
237          "type": {"key": {"type": "string",
238                           "enum": ["set", ["up", "down"]]},
239                   "min": 0, "max": 1},
240          "ephemeral": true},
241        "link_state": {
242          "type": {"key": {"type": "string",
243                           "enum": ["set", ["up", "down"]]},
244                   "min": 0, "max": 1},
245          "ephemeral": true},
246        "link_resets": {
247          "type": {"key": {"type": "integer"},
248                   "min": 0, "max": 1},
249          "ephemeral": true},
250        "link_speed": {
251          "type": {"key": "integer", "min": 0, "max": 1},
252          "ephemeral": true},
253        "duplex": {
254          "type": {"key": {"type": "string",
255                           "enum": ["set", ["half", "full"]]},
256                   "min": 0, "max": 1},
257          "ephemeral": true},
258        "mtu": {
259          "type": {"key": "integer", "min": 0, "max": 1},
260          "ephemeral": true}},
261      "indexes": [["name"]]},
262    "Flow_Table": {
263      "columns": {
264        "name": {
265          "type": {"key": "string", "min": 0, "max": 1}},
266        "flow_limit": {
267          "type": {"key": {"type": "integer", "minInteger": 0},
268                   "min": 0, "max": 1}},
269        "overflow_policy": {
270          "type": {"key": {"type": "string",
271                           "enum": ["set", ["refuse", "evict"]]},
272                   "min": 0, "max": 1}},
273        "groups": {
274          "type": {"key": "string", "min": 0, "max": "unlimited"}}}},
275    "QoS": {
276      "columns": {
277        "type": {
278          "type": "string"},
279        "queues": {
280          "type": {"key": {"type": "integer",
281                           "minInteger": 0,
282                           "maxInteger": 4294967295},
283                   "value": {"type": "uuid",
284                             "refTable": "Queue"},
285                   "min": 0, "max": "unlimited"}},
286        "other_config": {
287          "type": {"key": "string", "value": "string",
288                   "min": 0, "max": "unlimited"}},
289        "external_ids": {
290          "type": {"key": "string", "value": "string",
291                   "min": 0, "max": "unlimited"}}},
292      "isRoot": true},
293    "Queue": {
294      "columns": {
295        "dscp": {
296          "type": {"key": {"type": "integer",
297                           "minInteger": 0,
298                           "maxInteger": 63},
299                   "min": 0, "max": 1}},
300        "other_config": {
301          "type": {"key": "string", "value": "string",
302                   "min": 0, "max": "unlimited"}},
303        "external_ids": {
304          "type": {"key": "string", "value": "string",
305                   "min": 0, "max": "unlimited"}}},
306      "isRoot": true},
307    "Mirror": {
308      "columns": {
309        "name": {
310          "type": "string"},
311        "select_all": {
312          "type": "boolean"},
313        "select_src_port": {
314          "type": {"key": {"type": "uuid",
315                           "refTable": "Port",
316                           "refType": "weak"},
317                    "min": 0, "max": "unlimited"}},
318        "select_dst_port": {
319          "type": {"key": {"type": "uuid",
320                           "refTable": "Port",
321                           "refType": "weak"},
322                    "min": 0, "max": "unlimited"}},
323        "select_vlan": {
324          "type": {"key": {"type": "integer",
325                           "minInteger": 0,
326                           "maxInteger": 4095},
327                   "min": 0, "max": 4096}},
328        "output_port": {
329          "type": {"key": {"type": "uuid",
330                           "refTable": "Port",
331                           "refType": "weak"},
332                   "min": 0, "max": 1}},
333        "output_vlan": {
334          "type": {"key": {"type": "integer",
335                           "minInteger": 1,
336                           "maxInteger": 4095},
337                   "min": 0, "max": 1}},
338        "statistics": {
339          "type": {"key": "string", "value": "integer",
340                   "min": 0, "max": "unlimited"},
341          "ephemeral": true},
342        "external_ids": {
343          "type": {"key": "string", "value": "string",
344                   "min": 0, "max": "unlimited"}}}},
345    "NetFlow": {
346      "columns": {
347        "targets": {
348          "type": {"key": {"type": "string"},
349                   "min": 1, "max": "unlimited"}},
350        "engine_type": {
351          "type": {"key": {"type": "integer",
352                           "minInteger": 0,
353                           "maxInteger": 255},
354                   "min": 0, "max": 1}},
355        "engine_id": {
356          "type": {"key": {"type": "integer",
357                           "minInteger": 0,
358                           "maxInteger": 255},
359                   "min": 0, "max": 1}},
360        "add_id_to_interface": {
361          "type": "boolean"},
362        "active_timeout": {
363          "type": {"key": {"type": "integer",
364                           "minInteger": -1}}},
365        "external_ids": {
366          "type": {"key": "string", "value": "string",
367                   "min": 0, "max": "unlimited"}}}},
368    "sFlow": {
369      "columns": {
370        "targets": {
371          "type": {"key": "string", "min": 1, "max": "unlimited"}},
372        "sampling": {
373          "type": {"key": "integer", "min": 0, "max": 1}},
374        "polling": {
375          "type": {"key": "integer", "min": 0, "max": 1}},
376        "header": {
377          "type": {"key": "integer", "min": 0, "max": 1}},
378        "agent": {
379          "type": {"key": "string", "min": 0, "max": 1}},
380        "external_ids": {
381          "type": {"key": "string", "value": "string",
382                   "min": 0, "max": "unlimited"}}}},
383    "Controller": {
384      "columns": {
385        "target": {
386          "type": "string"},
387        "max_backoff": {
388          "type": {"key": {"type": "integer",
389                           "minInteger": 1000},
390                   "min": 0, "max": 1}},
391        "inactivity_probe": {
392          "type": {"key": "integer", "min": 0, "max": 1}},
393        "connection_mode": {
394          "type": {"key": {"type": "string",
395                   "enum": ["set", ["in-band", "out-of-band"]]},
396                   "min": 0, "max": 1}},
397        "local_ip": {
398          "type": {"key": {"type": "string"},
399                   "min": 0, "max": 1}},
400        "local_netmask": {
401          "type": {"key": {"type": "string"},
402                   "min": 0, "max": 1}},
403        "local_gateway": {
404          "type": {"key": {"type": "string"},
405                   "min": 0, "max": 1}},
406        "enable_async_messages": {
407          "type": {"key": {"type": "boolean"},
408                   "min": 0, "max": 1}},
409        "controller_rate_limit": {
410          "type": {"key": {"type": "integer",
411                           "minInteger": 100},
412                   "min": 0, "max": 1}},
413        "controller_burst_limit": {
414          "type": {"key": {"type": "integer",
415                           "minInteger": 25},
416                   "min": 0, "max": 1}},
417        "other_config": {
418          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
419        "external_ids": {
420          "type": {"key": "string", "value": "string",
421                   "min": 0, "max": "unlimited"}},
422        "is_connected": {
423          "type": "boolean",
424          "ephemeral": true},
425        "role": {
426          "type": {"key": {"type": "string",
427                           "enum": ["set", ["other", "master", "slave"]]},
428                   "min": 0, "max": 1},
429          "ephemeral": true},
430        "status": {
431          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
432          "ephemeral": true}}},
433    "Manager": {
434      "columns": {
435        "target": {
436          "type": "string"},
437        "max_backoff": {
438          "type": {"key": {"type": "integer",
439                           "minInteger": 1000},
440                   "min": 0, "max": 1}},
441        "inactivity_probe": {
442          "type": {"key": "integer", "min": 0, "max": 1}},
443        "connection_mode": {
444          "type": {"key": {"type": "string",
445                   "enum": ["set", ["in-band", "out-of-band"]]},
446                   "min": 0, "max": 1}},
447        "other_config": {
448          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
449        "external_ids": {
450          "type": {"key": "string", "value": "string",
451                   "min": 0, "max": "unlimited"}},
452        "is_connected": {
453          "type": "boolean",
454          "ephemeral": true},
455        "status": {
456          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
457          "ephemeral": true}},
458      "indexes": [["target"]]},
459    "SSL": {
460      "columns": {
461        "private_key": {
462          "type": "string"},
463        "certificate": {
464          "type": "string"},
465        "ca_cert": {
466          "type": "string"},
467        "bootstrap_ca_cert": {
468          "type": "boolean"},
469        "external_ids": {
470          "type": {"key": "string", "value": "string",
471                   "min": 0, "max": "unlimited"}}},
472      "maxRows": 1}}}