1 module opendaylight-meter-types {
2 namespace "urn:opendaylight:meter:types";
5 import ietf-yang-types {prefix yang; revision-date "2013-07-15";}
6 import openflow-protocol { prefix ofproto; revision-date "2013-07-31"; }
7 import openflow-types { prefix oft; revision-date "2013-07-31"; }
10 revision "2013-09-18" {
11 description "Initial revision of meter service";
30 identity meter-capability {
31 description "Base identity for all the supported meter capabilities/flags";
34 base meter-capability;
35 description "Rate value in kb/s (kilo-bit per second)";
37 identity meter-pktps {
38 base meter-capability;
39 description "Rate value in packet/sec.";
41 identity meter-burst {
42 base meter-capability;
43 description "Do burst size.";
45 identity meter-stats {
46 base meter-capability;
47 description "Collect statistics.";
50 typedef meter-band-type {
53 bit ofpmbt-dscp-remark;
54 bit ofpmbt-experimenter;
59 description "Base identity for all the band type available";
61 identity meter-band-drop {
63 description "Drop packet";
65 identity meter-band-dscp-remark {
67 description "Remark DSCP in the IP header";
69 identity meter-band-experimenter {
71 description "Experimenter meter band";
78 description "Rate for dropping packets";
82 leaf drop-burst-size {
83 description "Size of bursts";
89 leaf dscp-remark-rate {
90 description "Rate for remarking packets";
94 leaf dscp-remark-burst-size {
95 description "Size of bursts";
100 description "Number of drop precedence level to add";
106 leaf experimenter-type {
107 description "Meter band type";
108 type meter-band-type;
111 leaf experimenter-rate {
112 description "Rate for remarking packets";
116 leaf experimenter-burst-size {
117 description "Size of bursts";
122 description "Experimenter id";
130 type instance-identifier;
136 description "Meter configuration flags";
141 description "Meter instance";
146 description "If true, barrier message is sent";
151 description "Name of meter instance";
155 leaf container-name {
156 description "Name of container";
160 container meter-band-headers {
161 list meter-band-header {
164 description "Meter band id";
168 container meter-band-types {
170 description "Meter band flags";
171 type meter-band-type;
176 description "Rate for this band";
180 leaf band-burst-size {
181 description "Size of bursts";
189 grouping meter-statistics {
199 leaf packet-in-count {
216 container meter-band-stats {
223 leaf packet-band-count {
227 leaf byte-band-count {
234 grouping meter-features {
240 leaf-list meter-band-supported {
246 leaf-list meter-capabilities-supported {
248 base meter-capability;
261 grouping meter-stats-config-request {
270 grouping meter-statistics-reply {
273 uses meter-statistics;
277 grouping meter-config-stats-reply {
278 list meter-config-stats {
284 grouping meter-features-reply {
288 container meter-message {
290 uses ofproto:ofHeader;
293 type oft:meter-mod-command;