1 <?xml version="1.0" encoding="UTF-8"?>
\r
2 <module name="opendaylight-meter-types"
\r
3 xmlns="urn:ietf:params:xml:ns:yang:yin:1"
\r
4 xmlns:meter="urn:opendaylight:meter:types"
\r
5 xmlns:yang="urn:ietf:params:xml:ns:yang:ietf-yang-types">
\r
6 <namespace uri="urn:opendaylight:meter:types"/>
\r
7 <prefix value="meter"/>
\r
8 <import module="ietf-yang-types">
\r
9 <prefix value="yang"/>
\r
10 <revision-date date="2010-09-24"/>
\r
12 <revision date="2013-09-18">
\r
14 <text>Initial revision of meter service</text>
\r
17 <typedef name="meter-id">
\r
18 <type name="uint32"/>
\r
20 <typedef name="band-id">
\r
21 <type name="uint32"/>
\r
23 <typedef name="meter-flags">
\r
25 <bit name="meter-kbps"/>
\r
26 <bit name="meter-pktps"/>
\r
27 <bit name="meter-burst"/>
\r
28 <bit name="meter-stats"/>
\r
31 <identity name="meter-capability">
\r
33 <text>Base identity for all the supported meter capabilities/flags</text>
\r
36 <identity name="meter-kbps">
\r
37 <base name="meter-capability"/>
\r
39 <text>Rate value in kb/s (kilo-bit per second)</text>
\r
42 <identity name="meter-pktps">
\r
43 <base name="meter-capability"/>
\r
45 <text>Rate value in packet/sec.</text>
\r
48 <identity name="meter-burst">
\r
49 <base name="meter-capability"/>
\r
51 <text>Do burst size.</text>
\r
54 <identity name="meter-stats">
\r
55 <base name="meter-capability"/>
\r
57 <text>Collect statistics.</text>
\r
60 <typedef name="meter-band-type">
\r
62 <bit name="ofpmbt-drop"/>
\r
63 <bit name="ofpmbt-dscp-remark"/>
\r
64 <bit name="ofpmbt-experimenter"/>
\r
67 <identity name="meter-band">
\r
69 <text>Base identity for all the band type available</text>
\r
72 <identity name="meter-band-drop">
\r
73 <base name="meter-band"/>
\r
75 <text>Drop packet</text>
\r
78 <identity name="meter-band-dscp-remark">
\r
79 <base name="meter-band"/>
\r
81 <text>Remark DSCP in the IP header</text>
\r
84 <identity name="meter-band-experimenter">
\r
85 <base name="meter-band"/>
\r
87 <text>Experimenter meter band</text>
\r
90 <grouping name="band-type">
\r
91 <choice name="band-type">
\r
93 <leaf name="drop-rate">
\r
95 <text>Rate for dropping packets</text>
\r
97 <type name="uint32"/>
\r
99 <leaf name="drop-burst-size">
\r
101 <text>Size of bursts</text>
\r
103 <type name="uint32"/>
\r
106 <case name="dscp-remark">
\r
107 <leaf name="dscp-remark-rate">
\r
109 <text>Rate for remarking packets</text>
\r
111 <type name="uint32"/>
\r
113 <leaf name="dscp-remark-burst-size">
\r
115 <text>Size of bursts</text>
\r
117 <type name="uint32"/>
\r
119 <leaf name="perc_level">
\r
121 <text>Number of drop precedence level to add</text>
\r
123 <type name="uint8"/>
\r
126 <case name="experimenter">
\r
127 <leaf name="experimenter-rate">
\r
129 <text>Rate for remarking packets</text>
\r
131 <type name="uint32"/>
\r
133 <leaf name="experimenter-burst-size">
\r
135 <text>Size of bursts</text>
\r
137 <type name="uint32"/>
\r
139 <leaf name="experimenter">
\r
141 <text>Experimenter id</text>
\r
143 <type name="uint32"/>
\r
148 <typedef name="meter-ref">
\r
149 <type name="instance-identifier"/>
\r
151 <grouping name="meter">
\r
152 <leaf name="flags">
\r
154 <text>Meter configuration flags</text>
\r
156 <type name="meter-flags"/>
\r
158 <leaf name="meter-id">
\r
160 <text>Meter instance</text>
\r
162 <type name="meter-id"/>
\r
164 <leaf name="barrier">
\r
166 <text>If true, barrier message is sent</text>
\r
168 <type name="boolean"/>
\r
170 <leaf name="meter-name">
\r
172 <text>Name of meter instance</text>
\r
174 <type name="string"/>
\r
176 <leaf name="container-name">
\r
178 <text>Name of container</text>
\r
180 <type name="string"/>
\r
182 <container name="meter-band-headers">
\r
183 <list name="meter-band-header">
\r
184 <key value="band-id"/>
\r
185 <leaf name="band-id">
\r
187 <text>Meter band id</text>
\r
189 <type name="band-id"/>
\r
191 <container name="meter-band-types">
\r
192 <leaf name="flags">
\r
194 <text>Meter band flags</text>
\r
196 <type name="meter-band-type"/>
\r
199 <leaf name="band-rate">
\r
201 <text>Rate for this band</text>
\r
203 <type name="uint32"/>
\r
205 <leaf name="band-burst-size">
\r
207 <text>Size of bursts</text>
\r
209 <type name="uint32"/>
\r
211 <uses name="band-type"/>
\r
215 <grouping name="meter-statistics">
\r
216 <leaf name="meter-id">
\r
217 <type name="meter-id"/>
\r
219 <leaf name="flow-count">
\r
220 <type name="yang:counter32"/>
\r
222 <leaf name="packet-in-count">
\r
223 <type name="yang:counter64"/>
\r
225 <leaf name="byte-in-count">
\r
226 <type name="yang:counter64"/>
\r
228 <container name="duration">
\r
229 <leaf name="second">
\r
230 <type name="yang:counter32"/>
\r
232 <leaf name="nanosecond">
\r
233 <type name="yang:counter32"/>
\r
236 <container name="meter-band-stats">
\r
237 <list name="band-stat">
\r
238 <key value="band-id"/>
\r
239 <leaf name="band-id">
\r
240 <type name="band-id"/>
\r
242 <leaf name="packet-band-count">
\r
243 <type name="yang:counter64"/>
\r
245 <leaf name="byte-band-count">
\r
246 <type name="yang:counter64"/>
\r
251 <grouping name="meter-features">
\r
252 <leaf name="max_meter">
\r
253 <type name="yang:counter32"/>
\r
255 <leaf-list name="meter-band-supported">
\r
256 <type name="identityref">
\r
257 <base name="meter-band"/>
\r
260 <leaf-list name="meter-capabilities-supported">
\r
261 <type name="identityref">
\r
262 <base name="meter-capability"/>
\r
265 <leaf name="max_bands">
\r
266 <type name="uint8"/>
\r
268 <leaf name="max_color">
\r
269 <type name="uint8"/>
\r
272 <grouping name="meter-stats-config-request">
\r
273 <list name="meter-stats">
\r
274 <key value="meter-id"/>
\r
275 <leaf name="meter-id">
\r
276 <type name="meter-id"/>
\r
280 <grouping name="meter-statistics-reply">
\r
281 <list name="meter-stats">
\r
282 <key value="meter-id"/>
\r
283 <uses name="meter-statistics"/>
\r
286 <grouping name="meter-config-stats-reply">
\r
287 <list name="meter-config-stats">
\r
288 <key value="meter-id"/>
\r
289 <uses name="meter"/>
\r
292 <grouping name="meter-features-reply">
\r
293 <uses name="meter-features"/>
\r