vswitchd: Make the MAC entry aging time configurable.
[sliver-openvswitch.git] / vswitchd / vswitch.ovsschema
1 {"name": "Open_vSwitch",
2  "version": "3.1.0",
3  "cksum": "1438894691 15636",
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    "Port": {
99      "columns": {
100        "name": {
101          "type": "string",
102          "mutable": false},
103        "interfaces": {
104          "type": {"key": {"type": "uuid",
105                           "refTable": "Interface"},
106                   "min": 1, "max": "unlimited"}},
107        "trunks": {
108          "type": {"key": {"type": "integer",
109                           "minInteger": 0,
110                           "maxInteger": 4095},
111                   "min": 0, "max": 4096}},
112        "tag": {
113          "type": {"key": {"type": "integer",
114                           "minInteger": 0,
115                           "maxInteger": 4095},
116                   "min": 0, "max": 1}},
117        "qos": {
118          "type": {"key": {"type": "uuid",
119                           "refTable": "QoS"},
120                   "min": 0, "max": 1}},
121        "mac": {
122          "type": {"key": {"type": "string"},
123                   "min": 0, "max": 1}},
124        "bond_mode": {
125          "type": {"key": {"type": "string",
126            "enum": ["set", ["balance-tcp", "balance-slb", "active-backup"]]},
127          "min": 0, "max": 1}},
128        "lacp": {
129          "type": {"key": {"type": "string",
130            "enum": ["set", ["active", "passive", "off"]]},
131          "min": 0, "max": 1}},
132        "bond_updelay": {
133          "type": "integer"},
134        "bond_downdelay": {
135          "type": "integer"},
136        "bond_fake_iface": {
137          "type": "boolean"},
138        "fake_bridge": {
139          "type": "boolean"},
140        "other_config": {
141          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
142        "external_ids": {
143          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}}}},
144    "Interface": {
145      "columns": {
146        "name": {
147          "type": "string",
148          "mutable": false},
149        "type": {
150          "type": "string"},
151        "options": {
152          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
153        "ingress_policing_rate": {
154          "type": {"key": {"type": "integer",
155                           "minInteger": 0}}},
156        "ingress_policing_burst": {
157          "type": {"key": {"type": "integer",
158                           "minInteger": 0}}},
159        "mac": {
160          "type": {"key": {"type": "string"},
161                   "min": 0, "max": 1}},
162        "external_ids": {
163          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
164        "ofport": {
165          "type": {"key": "integer", "min": 0, "max": 1},
166          "ephemeral": true},
167        "monitor": {
168          "type": {
169            "key": {"type": "uuid", "refTable": "Monitor"},
170            "min": 0,
171            "max": 1}},
172        "other_config": {
173          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
174        "statistics": {
175          "type": {"key": "string", "value": "integer", "min": 0, "max": "unlimited"},
176          "ephemeral": true},
177        "status": {
178          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
179          "ephemeral": true},
180        "admin_state": {
181          "type": {"key": {"type": "string",
182                           "enum": ["set", ["up", "down"]]},
183                   "min": 0, "max": 1},
184          "ephemeral": true},
185        "link_state": {
186          "type": {"key": {"type": "string",
187                           "enum": ["set", ["up", "down"]]},
188                   "min": 0, "max": 1},
189          "ephemeral": true},
190        "link_speed": {
191          "type": {"key": "integer", "min": 0, "max": 1},
192          "ephemeral": true},
193        "duplex": {
194          "type": {"key": {"type": "string",
195                           "enum": ["set", ["half", "full"]]},
196                   "min": 0, "max": 1},
197          "ephemeral": true},
198        "mtu": {
199          "type": {"key": "integer", "min": 0, "max": 1},
200          "ephemeral": true}}},
201    "Monitor": {
202      "columns": {
203        "mpid": {
204          "type" : {
205            "key": { "type": "integer", "minInteger": 1, "maxInteger": 8191}}},
206        "md_name": {
207          "type" : {
208            "key": { "type": "string", "minLength": 1, "maxLength": 43},
209            "min": 0,
210            "max": 1}},
211        "ma_name": {
212          "type" : {
213            "key": { "type": "string", "minLength": 1, "maxLength": 43},
214            "min": 0,
215            "max": 1}},
216        "interval": {
217          "type": {
218            "key": { "type": "integer", "minInteger": 100},
219            "min": 0,
220            "max": 1}},
221        "remote_mps": {
222          "type": {
223            "key": { "type": "uuid", "refTable": "Maintenance_Point"},
224            "min": 0,
225            "max": "unlimited"},
226          "ephemeral": true},
227        "unexpected_remote_mpids": {
228          "type": {
229            "key": { "type": "integer"},
230            "min": 0,
231            "max": "unlimited"},
232          "ephemeral": true},
233        "unexpected_remote_maids": {
234          "type": {
235            "key": "string",
236            "min": 0,
237            "max": "unlimited"},
238          "ephemeral": true},
239        "fault": {
240          "type": {
241            "key": { "type": "boolean"},
242            "min": 0,
243            "max": 1},
244          "ephemeral": true}}},
245    "Maintenance_Point": {
246      "columns": {
247        "mpid": {
248          "type" : {
249            "key": { "type": "integer", "minInteger": 1, "maxInteger": 8191}},
250          "mutable": false},
251        "fault": {
252          "type": {
253            "key": { "type": "boolean"},
254            "min": 0,
255            "max": 1},
256          "ephemeral": true}}},
257    "QoS": {
258      "columns": {
259        "type": {
260          "type": "string"},
261        "queues": {
262          "type": {"key": {"type": "integer",
263                           "minInteger": 0,
264                           "maxInteger": 4294967295},
265                   "value": {"type": "uuid",
266                             "refTable": "Queue"},
267                   "min": 0, "max": "unlimited"}},
268        "other_config": {
269          "type": {"key": "string", "value": "string",
270                   "min": 0, "max": "unlimited"}},
271        "external_ids": {
272          "type": {"key": "string", "value": "string",
273                   "min": 0, "max": "unlimited"}}},
274      "isRoot": true},
275    "Queue": {
276      "columns": {
277        "other_config": {
278          "type": {"key": "string", "value": "string",
279                   "min": 0, "max": "unlimited"}},
280        "external_ids": {
281          "type": {"key": "string", "value": "string",
282                   "min": 0, "max": "unlimited"}}},
283      "isRoot": true},
284    "Mirror": {
285      "columns": {
286        "name": {
287          "type": "string"},
288        "select_all": {
289          "type": "boolean"
290        },
291        "select_src_port": {
292          "type": {"key": {"type": "uuid",
293                           "refTable": "Port",
294                           "refType": "weak"},
295                    "min": 0, "max": "unlimited"}},
296        "select_dst_port": {
297          "type": {"key": {"type": "uuid",
298                           "refTable": "Port",
299                           "refType": "weak"},
300                    "min": 0, "max": "unlimited"}},
301        "select_vlan": {
302          "type": {"key": {"type": "integer",
303                           "minInteger": 0,
304                           "maxInteger": 4095},
305                   "min": 0, "max": 4096}},
306        "output_port": {
307          "type": {"key": {"type": "uuid",
308                           "refTable": "Port",
309                           "refType": "weak"},
310                   "min": 0, "max": 1}},
311        "output_vlan": {
312          "type": {"key": {"type": "integer",
313                           "minInteger": 1,
314                           "maxInteger": 4095},
315                   "min": 0, "max": 1}},
316        "external_ids": {
317          "type": {"key": "string", "value": "string",
318                   "min": 0, "max": "unlimited"}}}},
319    "NetFlow": {
320      "columns": {
321        "targets": {
322          "type": {"key": {"type": "string"},
323                   "min": 1, "max": "unlimited"}},
324        "engine_type": {
325          "type": {"key": {"type": "integer",
326                           "minInteger": 0,
327                           "maxInteger": 255},
328                   "min": 0, "max": 1}},
329        "engine_id": {
330          "type": {"key": {"type": "integer",
331                           "minInteger": 0,
332                           "maxInteger": 255},
333                   "min": 0, "max": 1}},
334        "add_id_to_interface": {
335          "type": "boolean"},
336        "active_timeout": {
337          "type": {"key": {"type": "integer",
338                           "minInteger": -1}}},
339        "external_ids": {
340          "type": {"key": "string", "value": "string",
341                   "min": 0, "max": "unlimited"}}}},
342    "sFlow": {
343      "columns": {
344        "targets": {
345          "type": {"key": "string", "min": 1, "max": "unlimited"}},
346        "sampling": {
347          "type": {"key": "integer", "min": 0, "max": 1}},
348        "polling": {
349          "type": {"key": "integer", "min": 0, "max": 1}},
350        "header": {
351          "type": {"key": "integer", "min": 0, "max": 1}},
352        "agent": {
353          "type": {"key": "string", "min": 0, "max": 1}},
354        "external_ids": {
355          "type": {"key": "string", "value": "string",
356                   "min": 0, "max": "unlimited"}}}},
357    "Controller": {
358      "columns": {
359        "target": {
360          "type": "string"},
361        "max_backoff": {
362          "type": {"key": {"type": "integer",
363                           "minInteger": 1000},
364                   "min": 0, "max": 1}},
365        "inactivity_probe": {
366          "type": {"key": "integer", "min": 0, "max": 1}},
367        "connection_mode": {
368          "type": {"key": {"type": "string",
369                   "enum": ["set", ["in-band", "out-of-band"]]},
370                   "min": 0, "max": 1}},
371        "local_ip": {
372          "type": {"key": {"type": "string"},
373                   "min": 0, "max": 1}},
374        "local_netmask": {
375          "type": {"key": {"type": "string"},
376                   "min": 0, "max": 1}},
377        "local_gateway": {
378          "type": {"key": {"type": "string"},
379                   "min": 0, "max": 1}},
380        "controller_rate_limit": {
381          "type": {"key": {"type": "integer",
382                           "minInteger": 100},
383                   "min": 0, "max": 1}},
384        "controller_burst_limit": {
385          "type": {"key": {"type": "integer",
386                           "minInteger": 25},
387                   "min": 0, "max": 1}},
388        "external_ids": {
389          "type": {"key": "string", "value": "string",
390                   "min": 0, "max": "unlimited"}},
391        "is_connected": {
392          "type": "boolean",
393          "ephemeral": true},
394        "role": {
395          "type": {"key": {"type": "string",
396                           "enum": ["set", ["other", "master", "slave"]]},
397                   "min": 0, "max": 1},
398          "ephemeral": true},
399        "status": {
400          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
401          "ephemeral": true}}},
402    "Manager": {
403      "columns": {
404        "target": {
405          "type": "string"},
406        "max_backoff": {
407          "type": {"key": {"type": "integer",
408                           "minInteger": 1000},
409                   "min": 0, "max": 1}},
410        "inactivity_probe": {
411          "type": {"key": "integer", "min": 0, "max": 1}},
412        "connection_mode": {
413          "type": {"key": {"type": "string",
414                   "enum": ["set", ["in-band", "out-of-band"]]},
415                   "min": 0, "max": 1}},
416        "external_ids": {
417          "type": {"key": "string", "value": "string",
418                   "min": 0, "max": "unlimited"}},
419        "is_connected": {
420          "type": "boolean",
421          "ephemeral": true},
422        "status": {
423          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
424          "ephemeral": true}}},
425    "SSL": {
426      "columns": {
427        "private_key": {
428          "type": "string"},
429        "certificate": {
430          "type": "string"},
431        "ca_cert": {
432          "type": "string"},
433        "bootstrap_ca_cert": {
434          "type": "boolean"},
435        "external_ids": {
436          "type": {"key": "string", "value": "string",
437                   "min": 0, "max": "unlimited"}}},
438      "maxRows": 1}}}