]>
Commit | Line | Data |
---|---|---|
d3a48372 MAL |
1 | ## |
2 | # = Rocker switch device | |
3 | ## | |
4 | ||
fafa4d50 | 5 | ## |
4d5c8bc4 | 6 | # @RockerSwitch: |
fafa4d50 SF |
7 | # |
8 | # Rocker switch information. | |
9 | # | |
10 | # @name: switch name | |
11 | # | |
12 | # @id: switch ID | |
13 | # | |
14 | # @ports: number of front-panel ports | |
15 | # | |
16 | # Since: 2.4 | |
17 | ## | |
18 | { 'struct': 'RockerSwitch', | |
19 | 'data': { 'name': 'str', 'id': 'uint64', 'ports': 'uint32' } } | |
20 | ||
21 | ## | |
22 | # @query-rocker: | |
23 | # | |
24 | # Return rocker switch information. | |
25 | # | |
26 | # Returns: @Rocker information | |
27 | # | |
28 | # Since: 2.4 | |
29 | ## | |
30 | { 'command': 'query-rocker', | |
31 | 'data': { 'name': 'str' }, | |
32 | 'returns': 'RockerSwitch' } | |
33 | ||
34 | ## | |
35 | # @RockerPortDuplex: | |
36 | # | |
37 | # An eumeration of port duplex states. | |
38 | # | |
39 | # @half: half duplex | |
40 | # | |
41 | # @full: full duplex | |
42 | # | |
43 | # Since: 2.4 | |
44 | ## | |
45 | { 'enum': 'RockerPortDuplex', 'data': [ 'half', 'full' ] } | |
46 | ||
47 | ## | |
48 | # @RockerPortAutoneg: | |
49 | # | |
50 | # An eumeration of port autoneg states. | |
51 | # | |
52 | # @off: autoneg is off | |
53 | # | |
54 | # @on: autoneg is on | |
55 | # | |
56 | # Since: 2.4 | |
57 | ## | |
58 | { 'enum': 'RockerPortAutoneg', 'data': [ 'off', 'on' ] } | |
59 | ||
60 | ## | |
61 | # @RockerPort: | |
62 | # | |
63 | # Rocker switch port information. | |
64 | # | |
65 | # @name: port name | |
66 | # | |
67 | # @enabled: port is enabled for I/O | |
68 | # | |
69 | # @link-up: physical link is UP on port | |
70 | # | |
71 | # @speed: port link speed in Mbps | |
72 | # | |
73 | # @duplex: port link duplex | |
74 | # | |
75 | # @autoneg: port link autoneg | |
76 | # | |
77 | # Since: 2.4 | |
78 | ## | |
79 | { 'struct': 'RockerPort', | |
80 | 'data': { 'name': 'str', 'enabled': 'bool', 'link-up': 'bool', | |
81 | 'speed': 'uint32', 'duplex': 'RockerPortDuplex', | |
82 | 'autoneg': 'RockerPortAutoneg' } } | |
83 | ||
84 | ## | |
85 | # @query-rocker-ports: | |
86 | # | |
87 | # Return rocker switch information. | |
88 | # | |
89 | # Returns: @Rocker information | |
90 | # | |
91 | # Since: 2.4 | |
92 | ## | |
93 | { 'command': 'query-rocker-ports', | |
94 | 'data': { 'name': 'str' }, | |
95 | 'returns': ['RockerPort'] } | |
96 | ||
97 | ## | |
98 | # @RockerOfDpaFlowKey: | |
99 | # | |
100 | # Rocker switch OF-DPA flow key | |
101 | # | |
102 | # @priority: key priority, 0 being lowest priority | |
103 | # | |
104 | # @tbl-id: flow table ID | |
105 | # | |
106 | # @in-pport: #optional physical input port | |
107 | # | |
108 | # @tunnel-id: #optional tunnel ID | |
109 | # | |
110 | # @vlan-id: #optional VLAN ID | |
111 | # | |
112 | # @eth-type: #optional Ethernet header type | |
113 | # | |
114 | # @eth-src: #optional Ethernet header source MAC address | |
115 | # | |
116 | # @eth-dst: #optional Ethernet header destination MAC address | |
117 | # | |
118 | # @ip-proto: #optional IP Header protocol field | |
119 | # | |
120 | # @ip-tos: #optional IP header TOS field | |
121 | # | |
122 | # @ip-dst: #optional IP header destination address | |
123 | # | |
124 | # Note: fields are marked #optional to indicate that they may or may not | |
125 | # appear in the flow key depending if they're relevant to the flow key. | |
126 | # | |
127 | # Since: 2.4 | |
128 | ## | |
129 | { 'struct': 'RockerOfDpaFlowKey', | |
130 | 'data' : { 'priority': 'uint32', 'tbl-id': 'uint32', '*in-pport': 'uint32', | |
131 | '*tunnel-id': 'uint32', '*vlan-id': 'uint16', | |
132 | '*eth-type': 'uint16', '*eth-src': 'str', '*eth-dst': 'str', | |
133 | '*ip-proto': 'uint8', '*ip-tos': 'uint8', '*ip-dst': 'str' } } | |
134 | ||
135 | ## | |
136 | # @RockerOfDpaFlowMask: | |
137 | # | |
138 | # Rocker switch OF-DPA flow mask | |
139 | # | |
140 | # @in-pport: #optional physical input port | |
141 | # | |
142 | # @tunnel-id: #optional tunnel ID | |
143 | # | |
144 | # @vlan-id: #optional VLAN ID | |
145 | # | |
146 | # @eth-src: #optional Ethernet header source MAC address | |
147 | # | |
148 | # @eth-dst: #optional Ethernet header destination MAC address | |
149 | # | |
150 | # @ip-proto: #optional IP Header protocol field | |
151 | # | |
152 | # @ip-tos: #optional IP header TOS field | |
153 | # | |
154 | # Note: fields are marked #optional to indicate that they may or may not | |
155 | # appear in the flow mask depending if they're relevant to the flow mask. | |
156 | # | |
157 | # Since: 2.4 | |
158 | ## | |
159 | { 'struct': 'RockerOfDpaFlowMask', | |
160 | 'data' : { '*in-pport': 'uint32', '*tunnel-id': 'uint32', | |
161 | '*vlan-id': 'uint16', '*eth-src': 'str', '*eth-dst': 'str', | |
162 | '*ip-proto': 'uint8', '*ip-tos': 'uint8' } } | |
163 | ||
164 | ## | |
165 | # @RockerOfDpaFlowAction: | |
166 | # | |
167 | # Rocker switch OF-DPA flow action | |
168 | # | |
169 | # @goto-tbl: #optional next table ID | |
170 | # | |
171 | # @group-id: #optional group ID | |
172 | # | |
173 | # @tunnel-lport: #optional tunnel logical port ID | |
174 | # | |
175 | # @vlan-id: #optional VLAN ID | |
176 | # | |
177 | # @new-vlan-id: #optional new VLAN ID | |
178 | # | |
179 | # @out-pport: #optional physical output port | |
180 | # | |
181 | # Note: fields are marked #optional to indicate that they may or may not | |
182 | # appear in the flow action depending if they're relevant to the flow action. | |
183 | # | |
184 | # Since: 2.4 | |
185 | ## | |
186 | { 'struct': 'RockerOfDpaFlowAction', | |
187 | 'data' : { '*goto-tbl': 'uint32', '*group-id': 'uint32', | |
188 | '*tunnel-lport': 'uint32', '*vlan-id': 'uint16', | |
189 | '*new-vlan-id': 'uint16', '*out-pport': 'uint32' } } | |
190 | ||
191 | ## | |
192 | # @RockerOfDpaFlow: | |
193 | # | |
194 | # Rocker switch OF-DPA flow | |
195 | # | |
196 | # @cookie: flow unique cookie ID | |
197 | # | |
198 | # @hits: count of matches (hits) on flow | |
199 | # | |
200 | # @key: flow key | |
201 | # | |
202 | # @mask: flow mask | |
203 | # | |
204 | # @action: flow action | |
205 | # | |
206 | # Since: 2.4 | |
207 | ## | |
208 | { 'struct': 'RockerOfDpaFlow', | |
209 | 'data': { 'cookie': 'uint64', 'hits': 'uint64', 'key': 'RockerOfDpaFlowKey', | |
210 | 'mask': 'RockerOfDpaFlowMask', 'action': 'RockerOfDpaFlowAction' } } | |
211 | ||
212 | ## | |
213 | # @query-rocker-of-dpa-flows: | |
214 | # | |
215 | # Return rocker OF-DPA flow information. | |
216 | # | |
217 | # @name: switch name | |
218 | # | |
219 | # @tbl-id: #optional flow table ID. If tbl-id is not specified, returns | |
220 | # flow information for all tables. | |
221 | # | |
222 | # Returns: @Rocker OF-DPA flow information | |
223 | # | |
224 | # Since: 2.4 | |
225 | ## | |
226 | { 'command': 'query-rocker-of-dpa-flows', | |
227 | 'data': { 'name': 'str', '*tbl-id': 'uint32' }, | |
228 | 'returns': ['RockerOfDpaFlow'] } | |
229 | ||
230 | ## | |
231 | # @RockerOfDpaGroup: | |
232 | # | |
233 | # Rocker switch OF-DPA group | |
234 | # | |
235 | # @id: group unique ID | |
236 | # | |
237 | # @type: group type | |
238 | # | |
239 | # @vlan-id: #optional VLAN ID | |
240 | # | |
241 | # @pport: #optional physical port number | |
242 | # | |
243 | # @index: #optional group index, unique with group type | |
244 | # | |
245 | # @out-pport: #optional output physical port number | |
246 | # | |
247 | # @group-id: #optional next group ID | |
248 | # | |
249 | # @set-vlan-id: #optional VLAN ID to set | |
250 | # | |
251 | # @pop-vlan: #optional pop VLAN headr from packet | |
252 | # | |
253 | # @group-ids: #optional list of next group IDs | |
254 | # | |
255 | # @set-eth-src: #optional set source MAC address in Ethernet header | |
256 | # | |
257 | # @set-eth-dst: #optional set destination MAC address in Ethernet header | |
258 | # | |
259 | # @ttl-check: #optional perform TTL check | |
260 | # | |
261 | # Note: fields are marked #optional to indicate that they may or may not | |
262 | # appear in the group depending if they're relevant to the group type. | |
263 | # | |
264 | # Since: 2.4 | |
265 | ## | |
266 | { 'struct': 'RockerOfDpaGroup', | |
267 | 'data': { 'id': 'uint32', 'type': 'uint8', '*vlan-id': 'uint16', | |
268 | '*pport': 'uint32', '*index': 'uint32', '*out-pport': 'uint32', | |
269 | '*group-id': 'uint32', '*set-vlan-id': 'uint16', | |
270 | '*pop-vlan': 'uint8', '*group-ids': ['uint32'], | |
271 | '*set-eth-src': 'str', '*set-eth-dst': 'str', | |
272 | '*ttl-check': 'uint8' } } | |
273 | ||
274 | ## | |
275 | # @query-rocker-of-dpa-groups: | |
276 | # | |
277 | # Return rocker OF-DPA group information. | |
278 | # | |
279 | # @name: switch name | |
280 | # | |
281 | # @type: #optional group type. If type is not specified, returns | |
282 | # group information for all group types. | |
283 | # | |
284 | # Returns: @Rocker OF-DPA group information | |
285 | # | |
286 | # Since: 2.4 | |
287 | ## | |
288 | { 'command': 'query-rocker-of-dpa-groups', | |
289 | 'data': { 'name': 'str', '*type': 'uint8' }, | |
290 | 'returns': ['RockerOfDpaGroup'] } |