1 module opendaylight-flow-types {
2 namespace "urn:opendaylight:flow:types";
5 import ietf-inet-types {prefix inet; revision-date "2010-09-24";}
6 import ietf-yang-types {prefix yang; revision-date "2010-09-24";}
7 import opendaylight-l2-types {prefix l2t; revision-date "2013-08-27";}
8 import opendaylight-match-types {prefix match; revision-date 2013-10-26";}
11 revision "2013-10-26" {
12 description "Initial revision of flow service";
21 grouping action-list {
35 type inet:ipv4-prefix;
40 type inet:ipv6-prefix;
46 grouping instruction-list {
56 grouping instruction {
97 leaf-list output-node-connector {
108 case controller-action {
116 case set-queue-action {
122 case pop-mpls-action {
124 type uint16; // TODO: define ethertype type
128 case set-mpls-ttl-action {
134 case set-nw-ttl-action {
140 case push-pbb-action {
142 type uint16; // TODO: define ethertype type
146 case pop-pbb-action {
150 case push-mpls-action {
152 type uint16; // TODO: define ethertype type
168 case flood-all-action {
171 case hw-path-action {
174 case loopback-action {
177 case pop-vlan-action {
180 case push-vlan-action {
181 leaf tag { // TPID - 16 bits
184 leaf pcp { // PCP - 3 bits
187 leaf cfi { // CFI - 1 bit (drop eligible)
190 leaf vlan-id { // VID - 12 bits
193 // leaf tci { //TCI = [PCP + CFI + VID]
195 // leaf header { //header = [TPID + TCI]
205 case set-dl-dst-action {
207 type yang:mac-address;
211 case set-dl-src-action {
213 type yang:mac-address;
222 case set-dl-type-action {
228 case set-next-hop-action {
232 case set-nw-dst-action {
236 case set-nw-src-action{
240 case set-nw-tos-action {
246 case set-tp-dst-action {
248 type inet:port-number;
251 case set-tp-src-action {
253 type inet:port-number;
256 case set-vlan-cfi-action {
262 case set-vlan-id-action {
268 case set-vlan-pcp-action {
274 case sw-path-action {
279 typedef flow-mod-flags {
293 container instructions {
294 uses instruction-list;
313 leaf container-name {
346 grouping flow-statistics {
365 grouping flow-table-statistics {