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