]> git.proxmox.com Git - ovs.git/blob - vswitchd/vswitch.ovsschema
ovsdb-tool: Document database numbering scheme.
[ovs.git] / vswitchd / vswitch.ovsschema
1 {"name": "Open_vSwitch",
2 "version": "7.14.0",
3 "cksum": "3374030633 22987",
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 "datapath_types": {
44 "type": {"key": {"type": "string"},
45 "min": 0, "max": "unlimited"}},
46 "iface_types": {
47 "type": {"key": {"type": "string"},
48 "min": 0, "max": "unlimited"}}},
49 "isRoot": true,
50 "maxRows": 1},
51 "Bridge": {
52 "columns": {
53 "name": {
54 "type": "string",
55 "mutable": false},
56 "datapath_type": {
57 "type": "string"},
58 "datapath_version": {
59 "type": "string"},
60 "datapath_id": {
61 "type": {"key": "string", "min": 0, "max": 1},
62 "ephemeral": true},
63 "stp_enable": {
64 "type": "boolean"},
65 "rstp_enable": {
66 "type": "boolean"},
67 "mcast_snooping_enable": {
68 "type": "boolean"},
69 "ports": {
70 "type": {"key": {"type": "uuid",
71 "refTable": "Port"},
72 "min": 0, "max": "unlimited"}},
73 "mirrors": {
74 "type": {"key": {"type": "uuid",
75 "refTable": "Mirror"},
76 "min": 0, "max": "unlimited"}},
77 "netflow": {
78 "type": {"key": {"type": "uuid",
79 "refTable": "NetFlow"},
80 "min": 0, "max": 1}},
81 "sflow": {
82 "type": {"key": {"type": "uuid",
83 "refTable": "sFlow"},
84 "min": 0, "max": 1}},
85 "ipfix": {
86 "type": {"key": {"type": "uuid",
87 "refTable": "IPFIX"},
88 "min": 0, "max": 1}},
89 "controller": {
90 "type": {"key": {"type": "uuid",
91 "refTable": "Controller"},
92 "min": 0, "max": "unlimited"}},
93 "protocols": {
94 "type": {"key": {"type": "string",
95 "enum": ["set", ["OpenFlow10",
96 "OpenFlow11",
97 "OpenFlow12",
98 "OpenFlow13",
99 "OpenFlow14",
100 "OpenFlow15",
101 "OpenFlow16"]]},
102 "min": 0, "max": "unlimited"}},
103 "fail_mode": {
104 "type": {"key": {"type": "string",
105 "enum": ["set", ["standalone", "secure"]]},
106 "min": 0, "max": 1}},
107 "status": {
108 "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
109 "ephemeral": true},
110 "rstp_status": {
111 "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
112 "ephemeral": true},
113 "other_config": {
114 "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
115 "external_ids": {
116 "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
117 "flood_vlans": {
118 "type": {"key": {"type": "integer",
119 "minInteger": 0,
120 "maxInteger": 4095},
121 "min": 0, "max": 4096}},
122 "flow_tables": {
123 "type": {"key": {"type": "integer",
124 "minInteger": 0,
125 "maxInteger": 254},
126 "value": {"type": "uuid",
127 "refTable": "Flow_Table"},
128 "min": 0, "max": "unlimited"}},
129 "auto_attach": {
130 "type": {"key": {"type": "uuid",
131 "refTable": "AutoAttach"},
132 "min": 0, "max": 1}}},
133 "indexes": [["name"]]},
134 "Port": {
135 "columns": {
136 "name": {
137 "type": "string",
138 "mutable": false},
139 "interfaces": {
140 "type": {"key": {"type": "uuid",
141 "refTable": "Interface"},
142 "min": 1, "max": "unlimited"}},
143 "trunks": {
144 "type": {"key": {"type": "integer",
145 "minInteger": 0,
146 "maxInteger": 4095},
147 "min": 0, "max": 4096}},
148 "tag": {
149 "type": {"key": {"type": "integer",
150 "minInteger": 0,
151 "maxInteger": 4095},
152 "min": 0, "max": 1}},
153 "vlan_mode": {
154 "type": {"key": {"type": "string",
155 "enum": ["set", ["trunk", "access", "native-tagged", "native-untagged"]]},
156 "min": 0, "max": 1}},
157 "qos": {
158 "type": {"key": {"type": "uuid",
159 "refTable": "QoS"},
160 "min": 0, "max": 1}},
161 "mac": {
162 "type": {"key": {"type": "string"},
163 "min": 0, "max": 1}},
164 "bond_mode": {
165 "type": {"key": {"type": "string",
166 "enum": ["set", ["balance-tcp", "balance-slb", "active-backup"]]},
167 "min": 0, "max": 1}},
168 "lacp": {
169 "type": {"key": {"type": "string",
170 "enum": ["set", ["active", "passive", "off"]]},
171 "min": 0, "max": 1}},
172 "bond_updelay": {
173 "type": "integer"},
174 "bond_downdelay": {
175 "type": "integer"},
176 "bond_active_slave": {
177 "type": {"key": {"type": "string"},
178 "min": 0, "max": 1}},
179 "bond_fake_iface": {
180 "type": "boolean"},
181 "fake_bridge": {
182 "type": "boolean"},
183 "status": {
184 "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
185 "ephemeral": true},
186 "rstp_status": {
187 "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
188 "ephemeral": true},
189 "rstp_statistics": {
190 "type": {"key": "string", "value": "integer", "min": 0, "max": "unlimited"},
191 "ephemeral": true},
192 "statistics": {
193 "type": {"key": "string", "value": "integer", "min": 0, "max": "unlimited"},
194 "ephemeral": true},
195 "protected": {
196 "type": "boolean"},
197 "other_config": {
198 "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
199 "external_ids": {
200 "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}}},
201 "indexes": [["name"]]},
202 "Interface": {
203 "columns": {
204 "name": {
205 "type": "string",
206 "mutable": false},
207 "type": {
208 "type": "string"},
209 "options": {
210 "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
211 "ingress_policing_rate": {
212 "type": {"key": {"type": "integer",
213 "minInteger": 0}}},
214 "ingress_policing_burst": {
215 "type": {"key": {"type": "integer",
216 "minInteger": 0}}},
217 "mac_in_use": {
218 "type": {"key": {"type": "string"},
219 "min": 0, "max": 1},
220 "ephemeral": true},
221 "mac": {
222 "type": {"key": {"type": "string"},
223 "min": 0, "max": 1}},
224 "ifindex": {
225 "type": {
226 "key": {"type": "integer",
227 "minInteger": 0,
228 "maxInteger": 4294967295},
229 "min": 0,
230 "max": 1},
231 "ephemeral": true},
232 "external_ids": {
233 "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
234 "ofport": {
235 "type": {"key": "integer", "min": 0, "max": 1}},
236 "ofport_request": {
237 "type": {
238 "key": {"type": "integer",
239 "minInteger": 1,
240 "maxInteger": 65279},
241 "min": 0,
242 "max": 1}},
243 "bfd": {
244 "type": {"key": "string", "value": "string",
245 "min": 0, "max": "unlimited"}},
246 "bfd_status": {
247 "type": {"key": "string", "value": "string",
248 "min": 0, "max": "unlimited"}},
249 "cfm_mpid": {
250 "type": {
251 "key": {"type": "integer"},
252 "min": 0,
253 "max": 1}},
254 "cfm_remote_mpids": {
255 "type": {
256 "key": {"type": "integer"},
257 "min": 0,
258 "max": "unlimited"},
259 "ephemeral": true},
260 "cfm_flap_count": {
261 "type": {
262 "key": {"type": "integer"},
263 "min": 0,
264 "max": 1}},
265 "cfm_fault": {
266 "type": {
267 "key": { "type": "boolean"},
268 "min": 0,
269 "max": 1},
270 "ephemeral": true},
271 "cfm_fault_status": {
272 "type": {
273 "key": "string", "min": 0, "max": "unlimited"},
274 "ephemeral": true},
275 "cfm_remote_opstate": {
276 "type": {"key": {"type": "string",
277 "enum": ["set", ["up", "down"]]},
278 "min": 0, "max": 1},
279 "ephemeral": true},
280 "cfm_health": {
281 "type": {"key": {"type": "integer",
282 "minInteger": 0,
283 "maxInteger": 100},
284 "min": 0, "max": 1},
285 "ephemeral": true},
286 "lacp_current": {
287 "type": {"key": {"type": "boolean"},
288 "min": 0, "max": 1},
289 "ephemeral": true},
290 "lldp": {
291 "type": {"key": "string", "value": "string",
292 "min": 0, "max": "unlimited"}},
293 "other_config": {
294 "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
295 "statistics": {
296 "type": {"key": "string", "value": "integer", "min": 0, "max": "unlimited"},
297 "ephemeral": true},
298 "status": {
299 "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
300 "ephemeral": true},
301 "admin_state": {
302 "type": {"key": {"type": "string",
303 "enum": ["set", ["up", "down"]]},
304 "min": 0, "max": 1},
305 "ephemeral": true},
306 "link_state": {
307 "type": {"key": {"type": "string",
308 "enum": ["set", ["up", "down"]]},
309 "min": 0, "max": 1},
310 "ephemeral": true},
311 "link_resets": {
312 "type": {"key": {"type": "integer"},
313 "min": 0, "max": 1},
314 "ephemeral": true},
315 "link_speed": {
316 "type": {"key": "integer", "min": 0, "max": 1},
317 "ephemeral": true},
318 "duplex": {
319 "type": {"key": {"type": "string",
320 "enum": ["set", ["half", "full"]]},
321 "min": 0, "max": 1},
322 "ephemeral": true},
323 "mtu": {
324 "type": {"key": "integer", "min": 0, "max": 1},
325 "ephemeral": true},
326 "mtu_request": {
327 "type": {
328 "key": {"type": "integer",
329 "minInteger": 1},
330 "min": 0,
331 "max": 1}},
332 "error": {
333 "type": {"key": "string", "min": 0, "max": 1}}},
334 "indexes": [["name"]]},
335 "Flow_Table": {
336 "columns": {
337 "name": {
338 "type": {"key": "string", "min": 0, "max": 1}},
339 "flow_limit": {
340 "type": {"key": {"type": "integer", "minInteger": 0},
341 "min": 0, "max": 1}},
342 "overflow_policy": {
343 "type": {"key": {"type": "string",
344 "enum": ["set", ["refuse", "evict"]]},
345 "min": 0, "max": 1}},
346 "groups": {
347 "type": {"key": "string", "min": 0, "max": "unlimited"}},
348 "prefixes": {
349 "type": {"key": "string", "min": 0, "max": 3}},
350 "external_ids": {
351 "type": {"key": "string", "value": "string",
352 "min": 0, "max": "unlimited"}}}},
353 "QoS": {
354 "columns": {
355 "type": {
356 "type": "string"},
357 "queues": {
358 "type": {"key": {"type": "integer",
359 "minInteger": 0,
360 "maxInteger": 4294967295},
361 "value": {"type": "uuid",
362 "refTable": "Queue"},
363 "min": 0, "max": "unlimited"}},
364 "other_config": {
365 "type": {"key": "string", "value": "string",
366 "min": 0, "max": "unlimited"}},
367 "external_ids": {
368 "type": {"key": "string", "value": "string",
369 "min": 0, "max": "unlimited"}}},
370 "isRoot": true},
371 "Queue": {
372 "columns": {
373 "dscp": {
374 "type": {"key": {"type": "integer",
375 "minInteger": 0,
376 "maxInteger": 63},
377 "min": 0, "max": 1}},
378 "other_config": {
379 "type": {"key": "string", "value": "string",
380 "min": 0, "max": "unlimited"}},
381 "external_ids": {
382 "type": {"key": "string", "value": "string",
383 "min": 0, "max": "unlimited"}}},
384 "isRoot": true},
385 "Mirror": {
386 "columns": {
387 "name": {
388 "type": "string"},
389 "select_all": {
390 "type": "boolean"},
391 "select_src_port": {
392 "type": {"key": {"type": "uuid",
393 "refTable": "Port",
394 "refType": "weak"},
395 "min": 0, "max": "unlimited"}},
396 "select_dst_port": {
397 "type": {"key": {"type": "uuid",
398 "refTable": "Port",
399 "refType": "weak"},
400 "min": 0, "max": "unlimited"}},
401 "select_vlan": {
402 "type": {"key": {"type": "integer",
403 "minInteger": 0,
404 "maxInteger": 4095},
405 "min": 0, "max": 4096}},
406 "output_port": {
407 "type": {"key": {"type": "uuid",
408 "refTable": "Port",
409 "refType": "weak"},
410 "min": 0, "max": 1}},
411 "output_vlan": {
412 "type": {"key": {"type": "integer",
413 "minInteger": 1,
414 "maxInteger": 4095},
415 "min": 0, "max": 1}},
416 "snaplen": {
417 "type": {"key": {"type": "integer",
418 "minInteger": 14,
419 "maxInteger": 65535},
420 "min": 0, "max": 1}},
421 "statistics": {
422 "type": {"key": "string", "value": "integer",
423 "min": 0, "max": "unlimited"},
424 "ephemeral": true},
425 "external_ids": {
426 "type": {"key": "string", "value": "string",
427 "min": 0, "max": "unlimited"}}}},
428 "NetFlow": {
429 "columns": {
430 "targets": {
431 "type": {"key": {"type": "string"},
432 "min": 1, "max": "unlimited"}},
433 "engine_type": {
434 "type": {"key": {"type": "integer",
435 "minInteger": 0,
436 "maxInteger": 255},
437 "min": 0, "max": 1}},
438 "engine_id": {
439 "type": {"key": {"type": "integer",
440 "minInteger": 0,
441 "maxInteger": 255},
442 "min": 0, "max": 1}},
443 "add_id_to_interface": {
444 "type": "boolean"},
445 "active_timeout": {
446 "type": {"key": {"type": "integer",
447 "minInteger": -1}}},
448 "external_ids": {
449 "type": {"key": "string", "value": "string",
450 "min": 0, "max": "unlimited"}}}},
451 "sFlow": {
452 "columns": {
453 "targets": {
454 "type": {"key": "string", "min": 1, "max": "unlimited"}},
455 "sampling": {
456 "type": {"key": "integer", "min": 0, "max": 1}},
457 "polling": {
458 "type": {"key": "integer", "min": 0, "max": 1}},
459 "header": {
460 "type": {"key": "integer", "min": 0, "max": 1}},
461 "agent": {
462 "type": {"key": "string", "min": 0, "max": 1}},
463 "external_ids": {
464 "type": {"key": "string", "value": "string",
465 "min": 0, "max": "unlimited"}}}},
466 "IPFIX": {
467 "columns": {
468 "targets": {
469 "type": {"key": "string", "min": 0, "max": "unlimited"}},
470 "sampling": {
471 "type": {"key": {"type": "integer",
472 "minInteger": 1,
473 "maxInteger": 4294967295},
474 "min": 0, "max": 1}},
475 "obs_domain_id": {
476 "type": {"key": {"type": "integer",
477 "minInteger": 0,
478 "maxInteger": 4294967295},
479 "min": 0, "max": 1}},
480 "obs_point_id": {
481 "type": {"key": {"type": "integer",
482 "minInteger": 0,
483 "maxInteger": 4294967295},
484 "min": 0, "max": 1}},
485 "cache_active_timeout": {
486 "type": {"key": {"type": "integer",
487 "minInteger": 0,
488 "maxInteger": 4200},
489 "min": 0, "max": 1}},
490 "cache_max_flows": {
491 "type": {"key": {"type": "integer",
492 "minInteger": 0,
493 "maxInteger": 4294967295},
494 "min": 0, "max": 1}},
495 "other_config": {
496 "type": {"key": "string", "value": "string",
497 "min": 0, "max": "unlimited"}},
498 "external_ids": {
499 "type": {"key": "string", "value": "string",
500 "min": 0, "max": "unlimited"}}}},
501 "Flow_Sample_Collector_Set": {
502 "columns": {
503 "id": {
504 "type": {"key": {"type": "integer",
505 "minInteger": 0,
506 "maxInteger": 4294967295},
507 "min": 1, "max": 1}},
508 "bridge": {
509 "type": {"key": {"type": "uuid",
510 "refTable": "Bridge"},
511 "min": 1, "max": 1}},
512 "ipfix": {
513 "type": {"key": {"type": "uuid",
514 "refTable": "IPFIX"},
515 "min": 0, "max": 1}},
516 "external_ids": {
517 "type": {"key": "string", "value": "string",
518 "min": 0, "max": "unlimited"}}},
519 "isRoot": true,
520 "indexes": [["id", "bridge"]]},
521 "Controller": {
522 "columns": {
523 "target": {
524 "type": "string"},
525 "max_backoff": {
526 "type": {"key": {"type": "integer",
527 "minInteger": 1000},
528 "min": 0, "max": 1}},
529 "inactivity_probe": {
530 "type": {"key": "integer", "min": 0, "max": 1}},
531 "connection_mode": {
532 "type": {"key": {"type": "string",
533 "enum": ["set", ["in-band", "out-of-band"]]},
534 "min": 0, "max": 1}},
535 "local_ip": {
536 "type": {"key": {"type": "string"},
537 "min": 0, "max": 1}},
538 "local_netmask": {
539 "type": {"key": {"type": "string"},
540 "min": 0, "max": 1}},
541 "local_gateway": {
542 "type": {"key": {"type": "string"},
543 "min": 0, "max": 1}},
544 "enable_async_messages": {
545 "type": {"key": {"type": "boolean"},
546 "min": 0, "max": 1}},
547 "controller_rate_limit": {
548 "type": {"key": {"type": "integer",
549 "minInteger": 100},
550 "min": 0, "max": 1}},
551 "controller_burst_limit": {
552 "type": {"key": {"type": "integer",
553 "minInteger": 25},
554 "min": 0, "max": 1}},
555 "other_config": {
556 "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
557 "external_ids": {
558 "type": {"key": "string", "value": "string",
559 "min": 0, "max": "unlimited"}},
560 "is_connected": {
561 "type": "boolean",
562 "ephemeral": true},
563 "role": {
564 "type": {"key": {"type": "string",
565 "enum": ["set", ["other", "master", "slave"]]},
566 "min": 0, "max": 1},
567 "ephemeral": true},
568 "status": {
569 "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
570 "ephemeral": true}}},
571 "Manager": {
572 "columns": {
573 "target": {
574 "type": "string"},
575 "max_backoff": {
576 "type": {"key": {"type": "integer",
577 "minInteger": 1000},
578 "min": 0, "max": 1}},
579 "inactivity_probe": {
580 "type": {"key": "integer", "min": 0, "max": 1}},
581 "connection_mode": {
582 "type": {"key": {"type": "string",
583 "enum": ["set", ["in-band", "out-of-band"]]},
584 "min": 0, "max": 1}},
585 "other_config": {
586 "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
587 "external_ids": {
588 "type": {"key": "string", "value": "string",
589 "min": 0, "max": "unlimited"}},
590 "is_connected": {
591 "type": "boolean",
592 "ephemeral": true},
593 "status": {
594 "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
595 "ephemeral": true}},
596 "indexes": [["target"]]},
597 "SSL": {
598 "columns": {
599 "private_key": {
600 "type": "string"},
601 "certificate": {
602 "type": "string"},
603 "ca_cert": {
604 "type": "string"},
605 "bootstrap_ca_cert": {
606 "type": "boolean"},
607 "external_ids": {
608 "type": {"key": "string", "value": "string",
609 "min": 0, "max": "unlimited"}}},
610 "maxRows": 1},
611 "AutoAttach": {
612 "columns": {
613 "system_name": {
614 "type": "string"},
615 "system_description": {
616 "type": "string"},
617 "mappings": {
618 "type": {"key": {"type": "integer",
619 "minInteger": 0,
620 "maxInteger": 16777215},
621 "value": {"type": "integer",
622 "minInteger": 0,
623 "maxInteger": 4095},
624 "min": 0, "max": "unlimited"}}}}}}