1 module openflow-action {
2 namespace "urn:opendaylight:openflow:common:action";
5 import openflow-types { prefix oft; }
7 revision "2013-07-31" {
8 description "Initial model";
12 description " Output to switch port. ";
15 identity copy_ttl_out {
16 description " Copy TTL \"outwards\" -- from next-to-outermost to outermost ";
19 identity copy_ttl_in {
20 description " Copy TTL \"inwards\" -- from outermost to next-to-outermost ";
23 identity set_mpls_ttl {
24 description " MPLS TTL ";
27 identity dec_mpls_ttl {
28 description " Decrement MPLS TTL ";
32 description " Push a new VLAN tag ";
36 description " Pop the outer VLAN tag ";
40 description " Push a new MPLS tag ";
44 description " Pop the outer MPLS tag ";
48 description " Set queue id when outputting to a port ";
52 description " Apply group. ";
56 description " IP TTL. ";
60 description " Decrement IP TTL. ";
64 description " Set a header field using OXM TLV format. ";
68 description " Push a new PBB service tag (I-TAG) ";
72 description " Pop the outer PBB service tag (I-TAG) ";
75 identity experimenter {
83 "Action structure for OFPAT_OUTPUT, which sends packets out 'port'.
84 When the 'port' is the OFPP_CONTROLLER, 'max_len' indicates the max
85 number of bytes to send. A 'max_len' of zero means no bytes of the
86 packet should be sent. A 'max_len' of OFPCML_NO_BUFFER means that
87 the packet is not buffered and the complete packet is to be sent to
90 type oft:any-port-number;
93 description "Maximum packet length to be send to controller.";
96 range "0..65294"; // 0..0xff0e
101 "maximum max_len value which can be used
102 to request a specific byte length";
103 value 65509; //0xffe5
107 "indicates that no buffering should be
108 applied and the whole packet is to be
109 sent to the controller";
110 value 65535; //0xffff
119 type oft:group-id; // define action group-id type;
129 grouping set-mpls-ttl {
135 grouping set-nw-ttl {
167 // TODO: figure definition
172 container actions-container {
176 grouping action-header {