1 module opendaylight-flow-types {
2 namespace "urn:opendaylight:flow:types";
5 import ietf-inet-types {prefix inet;}
6 import opendaylight-match-types {prefix match;}
7 import ietf-yang-types {prefix yang;}
8 import opendaylight-l2-types {prefix l2t;}
10 revision "2013-08-19" {
11 description "Initial revision of flow service";
23 type inet:ipv4-prefix;
28 type inet:ipv6-prefix;
37 leaf-list output-node-connector {
42 case controller-action {
50 case set-queue-action {
52 type string; // TODO: define queues
56 case pop-mpls-action {
58 type uint16; // TODO: define ethertype type
62 case set-mpls-ttl-action {
68 case set-nw-ttl-action {
74 case push-pbb-action {
78 case push-mpls-action {
88 case flood-all-action {
94 case loopback-action {
97 case pop-vlan-action {
100 case push-vlan-action {
101 leaf tag { // TPID - 16 bits
104 leaf pcp { // PCP - 3 bits
107 leaf cfi { // CFI - 1 bit (drop eligible)
110 leaf vlan-id { // VID - 12 bits
113 // leaf tci { //TCI = [PCP + CFI + VID]
115 // leaf header { //header = [TPID + TCI]
118 case set-dl-dst-action {
120 type yang:mac-address;
124 case set-dl-src-action {
126 type yang:mac-address;
129 case set-dl-type-action {
134 case set-next-hop-action {
137 case set-nw-dst-action {
140 case set-nw-src-action{
143 case set-nw-tos-action {
149 case set-tp-dst-action {
151 type inet:port-number;
154 case set-tp-src-action {
156 type inet:port-number;
159 case set-vlan-cfi-action {
164 case set-vlan-id-action {
169 case set-vlan-pcp-action {
174 case sw-path-action {
181 typedef flow-mod-flags {
217 leaf container-name {
250 grouping flow-statistics {
269 grouping flow-table-statistics {