import openflowplugin-extension-general {prefix ext-gen;revision-date "2014-07-14";}
import openflow-action {prefix ofaction;revision-date "2015-02-03";}
import nicira-action {prefix nicira-action;revision-date "2014-04-21";}
+ import opendaylight-direct-statistics {prefix directstat;revision-date "2016-05-11";}
description
"Nicira openflow action extensions.";
}
}
+ grouping nx-action-fin-timeout-grouping {
+ container nx-action-fin-timeout {
+ leaf fin-idle-timeout {
+ type uint16;
+ }
+ leaf fin-hard-timeout {
+ type uint16;
+ }
+ }
+ }
+
grouping nx-action-multipath-grouping {
container nx-multipath {
leaf fields {
uses nx-action-resubmit-grouping;
}
}
+ augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
+ case nx-action-fin-timeout-rpc-add-flow-write-actions-case {
+ uses nx-action-fin-timeout-grouping;
+ }
+ }
augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
case nx-action-multipath-rpc-add-flow-write-actions-case {
uses nx-action-multipath-grouping;
uses nx-action-resubmit-grouping;
}
}
+ augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
+ case nx-action-fin-timeout-rpc-add-flow-apply-actions-case {
+ uses nx-action-fin-timeout-grouping;
+ }
+ }
augment "/sal-flow:add-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
case nx-action-multipath-rpc-add-flow-apply-actions-case {
uses nx-action-multipath-grouping;
uses nx-action-resubmit-grouping;
}
}
+ augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
+ case nx-action-fin-timeout-rpc-remove-flow-write-actions-case {
+ uses nx-action-fin-timeout-grouping;
+ }
+ }
augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
case nx-action-multipath-rpc-remove-flow-write-actions-case {
uses nx-action-multipath-grouping;
uses nx-action-resubmit-grouping;
}
}
+ augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
+ case nx-action-fin-timeout-rpc-remove-flow-apply-actions-case {
+ uses nx-action-fin-timeout-grouping;
+ }
+ }
augment "/sal-flow:remove-flow/sal-flow:input/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
case nx-action-multipath-rpc-remove-flow-apply-actions-case {
uses nx-action-multipath-grouping;
uses nx-action-resubmit-grouping;
}
}
+ augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
+ case "nx-action-fin-timeout-rpc-update-flow-original-write-actions-case" {
+ uses nx-action-fin-timeout-grouping;
+ }
+ }
augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
case "nx-action-multipath-rpc-update-flow-original-write-actions-case" {
uses nx-action-multipath-grouping;
uses nx-action-resubmit-grouping;
}
}
+ augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
+ case "nx-action-fin-timeout-rpc-update-flow-original-apply-actions-case" {
+ uses nx-action-fin-timeout-grouping;
+ }
+ }
augment "/sal-flow:update-flow/sal-flow:input/sal-flow:original-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
case "nx-action-multipath-rpc-update-flow-original-apply-actions-case" {
uses nx-action-multipath-grouping;
uses nx-action-resubmit-grouping;
}
}
+ augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
+ case "nx-action-fin-timeout-rpc-update-flow-updated-write-actions-case" {
+ uses nx-action-fin-timeout-grouping;
+ }
+ }
augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:write-actions-case/sal-flow:write-actions/sal-flow:action/sal-flow:action" {
case "nx-action-multipath-rpc-update-flow-updated-write-actions-case" {
uses nx-action-multipath-grouping;
uses nx-action-resubmit-grouping;
}
}
+ augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
+ case "nx-action-fin-timeout-rpc-update-flow-updated-apply-actions-case" {
+ uses nx-action-fin-timeout-grouping;
+ }
+ }
augment "/sal-flow:update-flow/sal-flow:input/sal-flow:updated-flow/sal-flow:instructions/sal-flow:instruction/sal-flow:instruction/sal-flow:apply-actions-case/sal-flow:apply-actions/sal-flow:action/sal-flow:action" {
case "nx-action-multipath-rpc-update-flow-updated-apply-actions-case" {
uses nx-action-multipath-grouping;
uses nx-action-resubmit-grouping;
}
}
+ augment "/sal-group:add-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
+ case "nx-action-fin-timeout-rpc-add-group-case" {
+ uses nx-action-fin-timeout-grouping;
+ }
+ }
augment "/sal-group:add-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
case "nx-action-multipath-rpc-add-group-case" {
uses nx-action-multipath-grouping;
uses nx-action-resubmit-grouping;
}
}
+ augment "/sal-group:remove-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
+ case "nx-action-fin-timeout-rpc-remove-group-case" {
+ uses nx-action-fin-timeout-grouping;
+ }
+ }
augment "/sal-group:remove-group/sal-group:input/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
case "nx-action-multipath-rpc-remove-group-case" {
uses nx-action-multipath-grouping;
uses nx-action-resubmit-grouping;
}
}
+ augment "/sal-group:update-group/sal-group:input/sal-group:original-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
+ case "nx-action-fin-timeout-rpc-update-group-original-case" {
+ uses nx-action-fin-timeout-grouping;
+ }
+ }
augment "/sal-group:update-group/sal-group:input/sal-group:original-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
case "nx-action-multipath-rpc-update-group-original-case" {
uses nx-action-multipath-grouping;
uses nx-action-resubmit-grouping;
}
}
+ augment "/sal-group:update-group/sal-group:input/sal-group:updated-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
+ case "nx-action-fin-timeout-rpc-update-group-updated-case" {
+ uses nx-action-fin-timeout-grouping;
+ }
+ }
augment "/sal-group:update-group/sal-group:input/sal-group:updated-group/sal-group:buckets/sal-group:bucket/sal-group:action/sal-group:action" {
case "nx-action-multipath-rpc-update-group-updated-case" {
uses nx-action-multipath-grouping;
uses nx-action-resubmit-grouping;
}
}
+ augment "/sal-packet:transmit-packet/sal-packet:input/sal-packet:action/sal-packet:action" {
+ case "nx-action-fin-timeout-rpc-transmit-packet-case" {
+ uses nx-action-fin-timeout-grouping;
+ }
+ }
augment "/sal-packet:transmit-packet/sal-packet:input/sal-packet:action/sal-packet:action" {
case "nx-action-multipath-rpc-transmit-packet-case" {
uses nx-action-multipath-grouping;
uses nx-action-resubmit-grouping;
}
}
+ augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:write-actions-case/fni:write-actions/fni:action/fni:action" {
+ case "nx-action-fin-timeout-nodes-node-table-flow-write-actions-case" {
+ uses nx-action-fin-timeout-grouping;
+ }
+ }
augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:write-actions-case/fni:write-actions/fni:action/fni:action" {
case "nx-action-multipath-nodes-node-table-flow-write-actions-case" {
uses nx-action-multipath-grouping;
uses nx-action-resubmit-grouping;
}
}
+ augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:apply-actions-case/fni:apply-actions/fni:action/fni:action" {
+ case "nx-action-fin-timeout-nodes-node-table-flow-apply-actions-case" {
+ uses nx-action-fin-timeout-grouping;
+ }
+ }
augment "/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:apply-actions-case/fni:apply-actions/fni:action/fni:action" {
case "nx-action-multipath-nodes-node-table-flow-apply-actions-case" {
uses nx-action-multipath-grouping;
uses nx-action-resubmit-grouping;
}
}
+ augment "/inv:nodes/inv:node/fni:group/fni:buckets/fni:bucket/fni:action/fni:action" {
+ case "nx-action-fin-timeout-nodes-node-group-buckets-bucket-actions-case" {
+ uses nx-action-fin-timeout-grouping;
+ }
+ }
augment "/inv:nodes/inv:node/fni:group/fni:buckets/fni:bucket/fni:action/fni:action" {
case "nx-action-multipath-nodes-node-group-buckets-bucket-actions-case" {
uses nx-action-multipath-grouping;
uses nx-action-resubmit-grouping;
}
}
+ augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:write-actions-case/odl-flow-stats:write-actions/odl-flow-stats:action/odl-flow-stats:action" {
+ case "nx-action-fin-timeout-notif-flows-statistics-update-write-actions-case" {
+ uses nx-action-fin-timeout-grouping;
+ }
+ }
augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:write-actions-case/odl-flow-stats:write-actions/odl-flow-stats:action/odl-flow-stats:action" {
case "nx-action-multipath-notif-flows-statistics-update-write-actions-case" {
uses nx-action-multipath-grouping;
uses nx-action-resubmit-grouping;
}
}
+ augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:apply-actions-case/odl-flow-stats:apply-actions/odl-flow-stats:action/odl-flow-stats:action" {
+ case "nx-action-fin-timeout-notif-flows-statistics-update-apply-actions-case" {
+ uses nx-action-fin-timeout-grouping;
+ }
+ }
augment "/odl-flow-stats:flows-statistics-update/odl-flow-stats:flow-and-statistics-map-list/odl-flow-stats:instructions/odl-flow-stats:instruction/odl-flow-stats:instruction/odl-flow-stats:apply-actions-case/odl-flow-stats:apply-actions/odl-flow-stats:action/odl-flow-stats:action" {
case "nx-action-multipath-notif-flows-statistics-update-apply-actions-case" {
uses nx-action-multipath-grouping;
uses nx-action-resubmit-grouping;
}
}
+ augment "/odl-group-stats:group-desc-stats-updated/odl-group-stats:group-desc-stats/odl-group-stats:buckets/odl-group-stats:bucket/odl-group-stats:action/odl-group-stats:action" {
+ case "nx-action-fin-timeout-notif-group-desc-stats-updated-case" {
+ uses nx-action-fin-timeout-grouping;
+ }
+ }
augment "/odl-group-stats:group-desc-stats-updated/odl-group-stats:group-desc-stats/odl-group-stats:buckets/odl-group-stats:bucket/odl-group-stats:action/odl-group-stats:action" {
case "nx-action-multipath-notif-group-desc-stats-updated-case" {
uses nx-action-multipath-grouping;
uses nx-action-learn-grouping;
}
}
+ augment "/directstat:get-flow-statistics/directstat:output/directstat:flow-and-statistics-map-list/directstat:instructions/directstat:instruction/directstat:instruction/directstat:apply-actions-case/directstat:apply-actions/directstat:action/directstat:action" {
+ case "nx-action-reg-load-notif-direct-statistics-update-apply-actions-case" {
+ uses nx-action-reg-load-grouping;
+ }
+ case "nx-action-reg-move-notif-direct-statistics-update-apply-actions-case" {
+ uses nx-action-reg-move-grouping;
+ }
+ case "nx-action-output-reg-notif-direct-statistics-update-apply-actions-case" {
+ uses nx-action-output-reg-grouping;
+ }
+ case "nx-action-resubmit-notif-direct-statistics-update-apply-actions-case" {
+ uses nx-action-resubmit-grouping;
+ }
+ case "nx-action-fin-timeout-notif-direct-statistics-update-apply-actions-case" {
+ uses nx-action-fin-timeout-grouping;
+ }
+ case "nx-action-multipath-notif-direct-statistics-update-apply-actions-case" {
+ uses nx-action-multipath-grouping;
+ }
+ case "nx-action-push-nsh-notif-direct-statistics-update-apply-actions-case" {
+ uses nx-action-push-nsh-grouping;
+ }
+ case "nx-action-pop-nsh-notif-direct-statistics-update-apply-actions-case" {
+ uses nx-action-pop-nsh-grouping;
+ }
+ case "nx-action-conntrack-notif-direct-statistics-update-apply-actions-case" {
+ uses nx-action-conntrack-grouping;
+ }
+ case "nx-action-learn-notif-direct-statistics-update-apply-actions-case" {
+ uses nx-action-learn-grouping;
+ }
+ }
+
+ augment "/directstat:get-flow-statistics/directstat:output/directstat:flow-and-statistics-map-list/directstat:instructions/directstat:instruction/directstat:instruction/directstat:write-actions-case/directstat:write-actions/directstat:action/directstat:action" {
+ case "nx-action-reg-load-notif-direct-statistics-update-write-actions-case" {
+ uses nx-action-reg-load-grouping;
+ }
+ case "nx-action-reg-move-notif-direct-statistics-update-write-actions-case" {
+ uses nx-action-reg-move-grouping;
+ }
+ case "nx-action-output-reg-notif-direct-statistics-update-write-actions-case" {
+ uses nx-action-output-reg-grouping;
+ }
+ case "nx-action-resubmit-notif-direct-statistics-update-write-actions-case" {
+ uses nx-action-resubmit-grouping;
+ }
+ case "nx-action-fin-timeout-notif-direct-statistics-update-write-actions-case" {
+ uses nx-action-fin-timeout-grouping;
+ }
+ case "nx-action-multipath-notif-direct-statistics-update-write-actions-case" {
+ uses nx-action-multipath-grouping;
+ }
+ case "nx-action-push-nsh-notif-direct-statistics-update-write-actions-case" {
+ uses nx-action-push-nsh-grouping;
+ }
+ case "nx-action-pop-nsh-notif-direct-statistics-update-write-actions-case" {
+ uses nx-action-pop-nsh-grouping;
+ }
+ case "nx-action-conntrack-notif-direct-statistics-update-write-actions-case" {
+ uses nx-action-conntrack-grouping;
+ }
+ case "nx-action-learn-notif-direct-statistics-update-write-actions-case" {
+ uses nx-action-learn-grouping;
+ }
+ }
}