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