]> git.proxmox.com Git - ovs.git/blob - vtep/vtep.ovsschema
openflow: Better abstract handling of packet-in messages.
[ovs.git] / vtep / vtep.ovsschema
1 {
2 "name": "hardware_vtep",
3 "cksum": "2177247725 10499",
4 "tables": {
5 "Global": {
6 "columns": {
7 "managers": {
8 "type": {"key": {"type": "uuid",
9 "refTable": "Manager"},
10 "min": 0, "max": "unlimited"}},
11 "switches": {
12 "type": {"key": {"type": "uuid", "refTable": "Physical_Switch"},
13 "min": 0, "max": "unlimited"}}
14 },
15 "maxRows": 1,
16 "isRoot": true},
17 "Physical_Switch": {
18 "columns": {
19 "ports": {
20 "type": {"key": {"type": "uuid", "refTable": "Physical_Port"},
21 "min": 0, "max": "unlimited"}},
22 "name": {"type": "string"},
23 "description": {"type": "string"},
24 "management_ips": {
25 "type": {"key": {"type": "string"}, "min": 0, "max": "unlimited"}},
26 "tunnel_ips": {
27 "type": {"key": {"type": "string"}, "min": 0, "max": "unlimited"}},
28 "tunnels": {
29 "type": {"key": {"type": "uuid", "refTable": "Tunnel"},
30 "min": 0, "max": "unlimited"}},
31 "switch_fault_status": {
32 "type": {
33 "key": "string", "min": 0, "max": "unlimited"},
34 "ephemeral": true}},
35 "indexes": [["name"]]},
36 "Physical_Port": {
37 "columns": {
38 "name": {"type": "string"},
39 "description": {"type": "string"},
40 "vlan_bindings": {
41 "type": {"key": {"type": "integer",
42 "minInteger": 0, "maxInteger": 4095},
43 "value": {"type": "uuid", "refTable": "Logical_Switch"},
44 "min": 0, "max": "unlimited"}},
45 "acl_bindings": {
46 "type": {"key": {"type": "integer",
47 "minInteger": 0, "maxInteger": 4095},
48 "value": {"type": "uuid", "refTable": "ACL"},
49 "min": 0, "max": "unlimited"}},
50 "vlan_stats": {
51 "type": {"key": {"type": "integer",
52 "minInteger": 0, "maxInteger": 4095},
53 "value": {"type": "uuid",
54 "refTable": "Logical_Binding_Stats"},
55 "min": 0, "max": "unlimited"},
56 "ephemeral": true},
57 "port_fault_status": {
58 "type": {
59 "key": "string", "min": 0, "max": "unlimited"},
60 "ephemeral": true}}},
61 "Tunnel": {
62 "columns": {
63 "local": {
64 "type": {"key": {"type": "uuid",
65 "refTable": "Physical_Locator"}}},
66 "remote": {
67 "type": {"key": {"type": "uuid",
68 "refTable": "Physical_Locator"}}},
69 "bfd_config_local": {
70 "type": {"key": "string", "value": "string",
71 "min": 0, "max": "unlimited"}},
72 "bfd_config_remote": {
73 "type": {"key": "string", "value": "string",
74 "min": 0, "max": "unlimited"}},
75 "bfd_params": {
76 "type": {"key": "string", "value": "string",
77 "min": 0, "max": "unlimited"}},
78 "bfd_status": {
79 "type": {"key": "string", "value": "string",
80 "min": 0, "max": "unlimited"},
81 "ephemeral": true}}},
82 "Logical_Binding_Stats": {
83 "columns": {
84 "bytes_from_local": {"type": "integer", "ephemeral": true},
85 "packets_from_local": {"type": "integer", "ephemeral": true},
86 "bytes_to_local": {"type": "integer", "ephemeral": true},
87 "packets_to_local": {"type": "integer", "ephemeral": true}}},
88 "Logical_Switch": {
89 "columns": {
90 "name": {"type": "string"},
91 "description": {"type": "string"},
92 "tunnel_key": {"type": {"key": "integer", "min": 0, "max": 1}}},
93 "isRoot": true,
94 "indexes": [["name"]]},
95 "Ucast_Macs_Local": {
96 "columns": {
97 "MAC": {"type": "string"},
98 "logical_switch": {
99 "type": {"key": {"type": "uuid",
100 "refTable": "Logical_Switch"}}},
101 "locator": {
102 "type": {"key": {"type": "uuid",
103 "refTable": "Physical_Locator"}}},
104 "ipaddr": {"type": "string"}},
105 "isRoot": true},
106 "Ucast_Macs_Remote": {
107 "columns": {
108 "MAC": {"type": "string"},
109 "logical_switch": {
110 "type": {"key": {"type": "uuid",
111 "refTable": "Logical_Switch"}}},
112 "locator": {
113 "type": {"key": {"type": "uuid",
114 "refTable": "Physical_Locator"}}},
115 "ipaddr": {"type": "string"}},
116 "isRoot": true},
117 "Mcast_Macs_Local": {
118 "columns": {
119 "MAC": {"type": "string"},
120 "logical_switch": {
121 "type": {"key": {"type": "uuid",
122 "refTable": "Logical_Switch"}}},
123 "locator_set": {
124 "type": {"key": {"type": "uuid",
125 "refTable": "Physical_Locator_Set"}}},
126 "ipaddr": {"type": "string"}},
127 "isRoot": true},
128 "Mcast_Macs_Remote": {
129 "columns": {
130 "MAC": {"type": "string"},
131 "logical_switch": {
132 "type": {"key": {"type": "uuid",
133 "refTable": "Logical_Switch"}}},
134 "locator_set": {
135 "type": {"key": {"type": "uuid",
136 "refTable": "Physical_Locator_Set"}}},
137 "ipaddr": {"type": "string"}},
138 "isRoot": true},
139 "Logical_Router": {
140 "columns": {
141 "name": {"type": "string"},
142 "description": {"type": "string"},
143 "switch_binding": {
144 "type": {"key": {"type": "string"},
145 "value": {"type": "uuid",
146 "refTable": "Logical_Switch"},
147 "min": 0, "max": "unlimited"}},
148 "static_routes": {
149 "type": {"key": {"type": "string"},
150 "value": {"type" : "string"},
151 "min": 0, "max": "unlimited"}},
152 "acl_binding": {
153 "type": {"key": {"type": "string"},
154 "value": {"type": "uuid",
155 "refTable": "ACL"},
156 "min": 0, "max": "unlimited"}},
157 "LR_fault_status": {
158 "type": {
159 "key": "string", "min": 0, "max": "unlimited"},
160 "ephemeral": true}},
161 "isRoot": true,
162 "indexes": [["name"]]},
163 "Arp_Sources_Local": {
164 "columns": {
165 "src_mac": {"type": "string"},
166 "locator": {
167 "type": {"key": {"type": "uuid",
168 "refTable": "Physical_Locator"}}}},
169 "isRoot": true},
170 "Arp_Sources_Remote": {
171 "columns": {
172 "src_mac": {"type": "string"},
173 "locator": {
174 "type": {"key": {"type": "uuid",
175 "refTable": "Physical_Locator"}}}},
176 "isRoot": true},
177 "Physical_Locator_Set": {
178 "columns": {
179 "locators": {
180 "type": {"key": {"type": "uuid", "refTable": "Physical_Locator"},
181 "min": 1, "max": "unlimited"},
182 "mutable": false}}},
183 "Physical_Locator": {
184 "columns": {
185 "encapsulation_type": {
186 "type": {
187 "key": {
188 "enum": ["set", ["vxlan_over_ipv4"]],
189 "type": "string"}},
190 "mutable": false},
191 "dst_ip": {"type": "string", "mutable": false}},
192 "indexes": [["encapsulation_type", "dst_ip"]]},
193 "ACL_entry": {
194 "columns": {
195 "sequence": {"type": "integer"},
196 "source_mac": {
197 "type": {
198 "key": "string", "min": 0, "max": 1}},
199 "dest_mac": {
200 "type": {
201 "key": "string", "min": 0, "max": 1}},
202 "ethertype": {
203 "type": {
204 "key": "string", "min": 0, "max": 1}},
205 "source_ip": {
206 "type": {
207 "key": "string", "min": 0, "max": 1}},
208 "source_mask": {
209 "type": {
210 "key": "string", "min": 0, "max": 1}},
211 "dest_ip": {
212 "type": {
213 "key": "string", "min": 0, "max": 1}},
214 "dest_mask": {
215 "type": {
216 "key": "string", "min": 0, "max": 1}},
217 "protocol": {
218 "type": {
219 "key": "integer", "min": 0, "max": 1}},
220 "source_port_min": {
221 "type": {
222 "key": "integer", "min": 0, "max": 1}},
223 "source_port_max": {
224 "type": {
225 "key": "integer", "min": 0, "max": 1}},
226 "dest_port_min": {
227 "type": {
228 "key": "integer", "min": 0, "max": 1}},
229 "dest_port_max": {
230 "type": {
231 "key": "integer", "min": 0, "max": 1}},
232 "tcp_flags": {
233 "type": {
234 "key": "integer", "min": 0, "max": 1}},
235 "tcp_flags_mask": {
236 "type": {
237 "key": "integer", "min": 0, "max": 1}},
238 "icmp_code": {
239 "type": {
240 "key": "integer", "min": 0, "max": 1}},
241 "icmp_type": {
242 "type": {
243 "key": "integer", "min": 0, "max": 1}},
244 "direction": {
245 "type": {
246 "key": {"type": "string", "enum": ["set", ["ingress", "egress"]]}}},
247 "action": {
248 "type": {
249 "key": {"type": "string", "enum": ["set", ["permit", "deny"]]}}},
250 "acle_fault_status": {
251 "type": {
252 "key": "string", "min": 0, "max": "unlimited"},
253 "ephemeral": true}},
254 "isRoot": true},
255 "ACL": {
256 "columns": {
257 "acl_entries": {
258 "type": {"key": {"type": "uuid", "refTable": "ACL_entry"},
259 "min": 1, "max": "unlimited"}},
260 "acl_name": {"type": "string"},
261 "acl_fault_status": {
262 "type": {
263 "key": "string", "min": 0, "max": "unlimited"},
264 "ephemeral": true}},
265 "indexes": [["acl_name"]],
266 "isRoot": true},
267 "Manager": {
268 "columns": {
269 "target": {"type": "string"},
270 "max_backoff": {
271 "type": {"key": {"type": "integer",
272 "minInteger": 1000},
273 "min": 0, "max": 1}},
274 "inactivity_probe": {
275 "type": {"key": "integer", "min": 0, "max": 1}},
276 "other_config": {
277 "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
278 "is_connected": {
279 "type": "boolean",
280 "ephemeral": true},
281 "status": {
282 "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
283 "ephemeral": true}},
284 "indexes": [["target"]],
285 "isRoot": false}},
286 "version": "1.4.1"}