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