namespace "urn:opendaylight:packet:service";
prefix flow;
- import opendaylight-inventory {prefix inv;}
- import ietf-inet-types {prefix inet;}
- import ietf-yang-types {prefix yang;}
- import opendaylight-l2-types {prefix types;}
+ import yang-ext {prefix ext; revision-date "2013-07-09";}
+ import opendaylight-inventory {prefix inv;revision-date "2013-08-19";}
+ import ietf-yang-types {prefix yang;revision-date "2010-09-24";}
+ import opendaylight-l2-types {prefix types;revision-date "2013-08-27";}
+ import opendaylight-match-types {prefix match-type;revision-date "2013-10-26";}
+ import opendaylight-table-types {prefix table-type;revision-date "2013-10-26";}
+ import opendaylight-action-types {prefix action-type;revision-date "2013-11-12";}
+
revision "2013-07-09" {
description "";
}
}
+ identity packet-in-reason {
+ description "Base identity for all the available packet in reason";
+ }
+
+ identity no-match {
+ base packet-in-reason;
+ description "No matching flow in the classifier";
+ }
+
+ identity send-to-controller {
+ base packet-in-reason;
+ description "Explicit instruction to send packet to controller";
+ }
+
+ identity invalid-ttl {
+ base packet-in-reason;
+ description "Packet with invalid TTL";
+ }
notification packet-received {
leaf cookie {
type cookie;
}
+
+ leaf table-id {
+ type table-type:table-id;
+ }
+
+ leaf packet-in-reason {
+ type identityref {
+ base packet-in-reason;
+ }
+ }
+
+ container match {
+ uses match-type:match;
+ }
+
uses raw-packet;
}
rpc transmit-packet {
input {
+ uses inv:node-context-ref;
+
leaf cookie {
type cookie;
}
+
leaf egress {
type inv:node-connector-ref;
}
+ leaf buffer-id {
+ type uint32;
+ }
+
uses raw-packet;
+ uses action-type:action-list;
}
}
-}
\ No newline at end of file
+}