X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=openflowjava.git;a=blobdiff_plain;f=openflow-protocol-api%2Fsrc%2Fmain%2Fyang%2Fopenflow-protocol.yang;fp=openflow-protocol-api%2Fsrc%2Fmain%2Fyang%2Fopenflow-protocol.yang;h=34f21818d6e55895b12dd0977a4b7d34d651d42d;hp=9330fac6fd5fbdd4f9f0305d7cbc8e5b33ca78a3;hb=07de1ed897da9d7dc70c6d550f38c59339ed751e;hpb=519a86d1ddcfb8f0fe264174e62e5424e1efba1f diff --git a/openflow-protocol-api/src/main/yang/openflow-protocol.yang b/openflow-protocol-api/src/main/yang/openflow-protocol.yang index 9330fac6..34f21818 100644 --- a/openflow-protocol-api/src/main/yang/openflow-protocol.yang +++ b/openflow-protocol-api/src/main/yang/openflow-protocol.yang @@ -5,13 +5,13 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ - + module openflow-protocol { namespace "urn:opendaylight:openflow:protocol"; prefix "ofproto"; import ietf-yang-types {prefix yang;} - + import openflow-types {prefix oft;} import openflow-extensible-match { prefix oxm;} import openflow-instruction { prefix ofinstruction;} @@ -55,7 +55,7 @@ } leaf peer-features { description "Features advertised by peer."; - type oft:port-features; + type oft:port-features; } leaf curr-speed { description "Current port bitrate in kbps."; @@ -72,7 +72,7 @@ leaf config-v10 { type oft:port-config-v10; } - leaf state-v10 { + leaf state-v10 { type oft:port-state-v10; } leaf current-features-v10 { @@ -87,9 +87,9 @@ description "Features supported by the port."; type oft:port-features-v10; } - leaf peer-features-v10 { + leaf peer-features-v10 { description "Features advertised by peer."; - type oft:port-features-v10; + type oft:port-features-v10; } } @@ -121,7 +121,7 @@ uses ofaction:actions-grouping; } - + container table-features-properties-container { uses table-features-properties-grouping; } @@ -159,10 +159,10 @@ reference "OFPT_HELLO message in Openflow Switch 1.3 Spec"; /* Symmetric message */ uses ofHeader; - + list elements { uses ofHelloElementHeader; - + leaf-list version-bitmap { type boolean; } @@ -172,7 +172,7 @@ reference "OFPT_ERROR message in Openflow Switch 1.3 Spec"; /* Symmetric message */ uses ofHeader; - + leaf type { type uint16; } @@ -186,14 +186,14 @@ type string; } leaf data { - type binary; + type binary; } } grouping echo-request { reference "OFPT_ECHO_REQUEST message in Openflow Switch 1.3 Spec"; /* Symmetric message */ uses ofHeader; - + leaf data { type binary; } @@ -202,7 +202,7 @@ reference "OFPT_ECHO_REPLY message in Openflow Switch 1.3 Spec"; /* Symmetric message */ uses ofHeader; - + leaf data { type binary; } @@ -211,7 +211,7 @@ reference "OFPT_EXPERIMENTER message in Openflow Switch 1.3 Spec"; /* Symmetric message */ uses ofHeader; - + leaf experimenter { type oft:experimenter-id; } @@ -229,7 +229,7 @@ reference "OFPT_FEATURES_REPLY message in Openflow Switch 1.3 Spec"; /* Controller/switch message */ uses ofHeader; - + leaf datapathId { type uint64; } @@ -268,7 +268,7 @@ reference "OFPT_GET_CONFIG_REPLY message in Openflow Switch 1.3 Spec"; /* Controller/switch message */ uses ofHeader; - + leaf flags { type oft:switch-config-flag; } @@ -279,9 +279,9 @@ grouping set-config { reference "OFPT_SET_CONFIG message in Openflow Switch 1.3 Spec"; /* Controller/switch message */ - + uses ofHeader; - + leaf flags { type oft:switch-config-flag; } @@ -293,9 +293,9 @@ grouping packet-in { reference "OFPT_PACKET_IN message in Openflow Switch 1.3 Spec"; /* Async message */ - + uses ofHeader; - + leaf buffer-id { // ID assigned by datapath. type uint32; @@ -305,7 +305,7 @@ type uint16; } leaf reason { - // Reason packet is being sent (one of OFPR_*) + // Reason packet is being sent (one of OFPR_*) type oft:packet-in-reason; } leaf table-id { @@ -321,7 +321,7 @@ leaf data { type binary; } - + // OF1.0 structures leaf in-port { type uint16; @@ -331,7 +331,7 @@ reference "OFPT_FLOW_REMOVED message in Openflow Switch 1.3 Spec"; /* Async message */ uses ofHeader; - + leaf cookie { type uint64; } @@ -363,17 +363,17 @@ type uint64; } uses oxm:match-grouping; - + // OF1.0 structures uses oxm:match-v10-grouping; - } + } grouping port-status { reference "OFPT_PORT_STATUS message in Openflow Switch 1.3 Spec"; - + uses ofHeader; - + uses port-grouping; - + leaf reason { type oft:port-reason; } @@ -382,11 +382,11 @@ grouping packet-out { reference "OFPT_PACKET_OUT message in Openflow Switch 1.3 Spec"; /* Controller/switch message */ - + uses ofHeader; - + uses ofaction:actions-grouping; - + leaf data { type binary; } @@ -396,13 +396,13 @@ leaf in-port { type oft:port-number; } - } + } grouping flow-mod { reference "OFPT_FLOW_MOD message in Openflow Switch 1.3 Spec"; /* Controller/switch message */ - + uses ofHeader; - + leaf cookie { type uint64; } @@ -437,22 +437,22 @@ type oft:flow-mod-flags; } uses oxm:match-grouping; - + uses ofinstruction:instructions-grouping; - + // OF1.0 structures leaf flags-v10 { type oft:flow-mod-flags-v10; } uses oxm:match-v10-grouping; uses ofaction:actions-grouping; - } + } grouping group-mod { reference "OFPT_GROUP_MOD message in Openflow Switch 1.3 Spec"; /* Controller/switch message */ - + uses ofHeader; - + leaf command { type oft:group-mod-command; } @@ -462,25 +462,25 @@ leaf group-id { type oft:group-id; } - + uses buckets-grouping; } - + grouping port-mod { reference "OFPT_PORT_MOD message in Openflow Switch 1.3 Spec"; /* Controller/switch message */ uses ofHeader; - + leaf port-no { type oft:port-number; } leaf hw-address { type yang:mac-address; - } + } leaf config { type oft:port-config; - } + } leaf mask { type oft:port-config; } @@ -497,28 +497,28 @@ leaf advertise-v10 { type oft:port-features-v10; } - } + } grouping table-mod { reference "OFPT_TABLE_MOD message in Openflow Switch 1.3 Spec"; /* Controller/switch message */ uses ofHeader; - + leaf table-id { type oft:table-id; } leaf config { type oft:table-config; } - } - + } + /* Multipart messages. */ grouping multipart-request { reference "OFPT_MULTIPART_REQUEST message in Openflow Switch 1.3 Spec"; /* Controller/switch message */ uses ofHeader; - + leaf type { type oft:multipart-type; } @@ -551,7 +551,7 @@ type uint64; } uses oxm:match-grouping; - + // OF1.0 structures uses oxm:match-v10-grouping; } @@ -574,7 +574,7 @@ type uint64; } uses oxm:match-grouping; - + // OF1.0 structures uses oxm:match-v10-grouping; } @@ -683,13 +683,13 @@ } } } - } + } grouping multipart-reply { reference "OFPT_MULTIPART_REPLY message in Openflow Switch 1.3 Spec"; /* Controller/switch message */ uses ofHeader; - + leaf type { type oft:multipart-type; } @@ -750,9 +750,9 @@ type uint64; } uses oxm:match-grouping; - + uses ofinstruction:instructions-grouping; - + // OF1.0 structures uses oxm:match-v10-grouping; uses ofaction:actions-grouping; @@ -787,7 +787,7 @@ leaf matched-count { type uint64; } - + // OF1.0 structures leaf name { type string; @@ -1029,7 +1029,7 @@ } leaf config { type oft:table-config; - } + } leaf max-entries { type uint32; } @@ -1050,35 +1050,35 @@ } } } - } + } /* Barrier messages. */ grouping barrier-request { reference "OFPT_BARRIER_REQUEST message in Openflow Switch 1.3 Spec"; /* Controller/switch message */ uses ofHeader; - } + } grouping barrier-reply { reference "OFPT_BARRIER_REPLY message in Openflow Switch 1.3 Spec"; /* Controller/switch message */ uses ofHeader; - } + } /* Queue Configuration messages. */ grouping queue-get-config-request { reference "OFPT_QUEUE_GET_CONFIG_REQUEST message in Openflow Switch 1.3 Spec"; /* Controller/switch message */ - + uses ofHeader; - + leaf port { type oft:port-number; } - } + } grouping queue-get-config-reply { reference "OFPT_QUEUE_GET_CONFIG_REPLY message in Openflow Switch 1.3 Spec"; /* Controller/switch message */ uses ofHeader; - + leaf port { type oft:port-number; } @@ -1110,51 +1110,51 @@ grouping role-request { reference "OFPT_ROLE_REQUEST message in Openflow Switch 1.3 Spec"; /* Controller/switch message */ - + uses ofHeader; - + leaf role { type oft:controller-role; } leaf generation-id { type uint64; } - } + } grouping role-reply { reference "OFPT_ROLE_REPLY message in Openflow Switch 1.3 Spec"; /* Controller/switch message */ uses ofHeader; - + leaf role { type oft:controller-role; } leaf generation-id { type uint64; } - } + } /* Asynchronous message configuration. */ grouping get-async-request { reference "OFPT_GET_ASYNC_REQUEST message in Openflow Switch 1.3 Spec"; /* Controller/switch message */ uses ofHeader; - } + } grouping get-async-reply { reference "OFPT_GET_ASYNC_REPLY message in Openflow Switch 1.3 Spec"; /* Controller/switch message */ uses ofHeader; uses async-body-grouping; - } + } grouping set-async { reference "OFPT_SET_ASYNC message in Openflow Switch 1.3 Spec"; /* Controller/switch message */ - + uses ofHeader; uses async-body-grouping; } - + grouping async-body-grouping { list packet-in-mask { leaf-list mask { @@ -1178,10 +1178,10 @@ /* Controller/switch message */ uses ofHeader; - + leaf command { type oft:meter-mod-command; - } + } leaf flags { type oft:meter-flags; } @@ -1192,7 +1192,7 @@ uses meter-band-header; } } - + container meter-band-container { uses meter-band-header; } @@ -1218,7 +1218,7 @@ } } } - + grouping meter-band-commons { leaf type { type oft:meter-band-type; @@ -1235,19 +1235,19 @@ notification hello-message { uses hello; reference "OFPT_HELLO message in Openflow Switch 1.3 Spec"; - + /* Symmetric message */ } notification error-message { uses error; reference "OFPT_ERROR message in Openflow Switch 1.3 Spec"; - + /* Symmetric message */ } notification echo-request-message { uses echo-request; reference "OFPT_ECHO_REQUEST message in Openflow Switch 1.3 Spec"; - + /* Symmetric message */ } notification experimenter-message { @@ -1267,19 +1267,19 @@ uses echo-reply; } } - + rpc echo-reply { input { uses echo-reply; } } - + rpc hello { input { uses hello; } } - + rpc experimenter { input { uses experimenter; @@ -1296,7 +1296,7 @@ uses features-reply; } } - + rpc get-config { input { uses get-config-request; @@ -1306,27 +1306,27 @@ } /* Controller/switch message */ } - + rpc set-config { input { uses set-config; - } + } /* Controller/switch message */ } /* Asynchronous messages. */ notification packet-in-message { uses packet-in; - + /* Async message */ } notification flow-removed-message { uses flow-removed; - + /* Async message */ - } + } notification port-status-message { uses port-status; - + } /* Async message */ /* Controller command messages. */ @@ -1335,25 +1335,25 @@ uses packet-out; } /* Controller/switch message */ - } + } rpc flow-mod { input { uses flow-mod; } /* Controller/switch message */ - } + } rpc group-mod { input { uses group-mod; } /* Controller/switch message */ - } + } rpc port-mod { input { uses port-mod; } } /* Controller/switch message */ - + rpc table-mod { input { uses table-mod; @@ -1373,7 +1373,7 @@ uses multipart-reply; // notification because of multiple following responses } /* Controller/switch message */ - + /* Barrier messages. */ rpc barrier { @@ -1392,7 +1392,7 @@ output { uses queue-get-config-reply; } - } + } /* Controller role change request messages. */ rpc role-request { @@ -1403,7 +1403,7 @@ uses role-reply; } } /* Controller/switch message */ - + /* Asynchronous message configuration. */ rpc get-async { input { @@ -1412,14 +1412,14 @@ output { uses get-async-reply; } - } + } /* Controller/switch message */ rpc set-async { - input { + input { uses set-async; } - - } + + } /* Meters and rate limiters configuration messages. */ rpc meter-mod { input {