typedef group-id {
type uint32;
}
-
+
typedef bucket-id {
- type uint32;
+ type uint32;
}
-
- typedef group-types {
+
+ typedef group-types {
type enumeration {
enum group-all;
enum group-select;
enum group-indirect;
enum group-ff;
- }
+ }
}
-
- typedef group-capabilities {
+
+ typedef group-capabilities {
type enumeration {
enum select-weight;
enum select-liveness;
enum chaining;
enum chaining-checks;
- }
+ }
}
-
+
identity group-type {
- description "Base identity for all the available group types";
+ description "Base identity for all the available group types";
}
-
+
identity group-all {
- base group-type;
- description "All (multicast/broadcast) group";
+ base group-type;
+ description "All (multicast/broadcast) group";
}
-
+
identity group-select {
- base group-type;
- description "Select group";
+ base group-type;
+ description "Select group";
}
-
+
identity group-indirect {
- base group-type;
- description "Indirect group";
+ base group-type;
+ description "Indirect group";
}
-
+
identity group-ff {
- base group-type;
- description "Fast failover group";
+ base group-type;
+ description "Fast failover group";
}
-
+
identity group-capability {
- description "Base identity for all the supported group capabilities";
+ description "Base identity for all the supported group capabilities";
}
-
+
identity select-weight{
- base group-capability;
- description "Support weight for select groups";
+ base group-capability;
+ description "Support weight for select groups";
}
identity select-liveness{
- base group-capability;
- description "Support liveness for select groups";
+ base group-capability;
+ description "Support liveness for select groups";
}
identity chaining{
- base group-capability;
- description "Support chaining groups";
+ base group-capability;
+ description "Support chaining groups";
}
identity chaining-checks{
- base group-capability;
- description "Check chaining for loops and delete";
+ base group-capability;
+ description "Check chaining for loops and delete";
}
-
+
typedef group-ref {
type instance-identifier;
}
-
+
grouping group {
-
+
leaf group-type {
type group-types;
}
-
+
leaf group-id {
type group-id;
}
-
+
leaf group-name {
type string;
}
-
+
leaf container-name {
- type string;
+ type string;
}
-
+
leaf barrier {
- type boolean;
- }
-
+ type boolean;
+ }
+
container buckets {
list bucket {
key "bucket-id";
leaf bucket-id {
type bucket-id;
}
-
+
leaf weight {
type uint16;
}
-
+
leaf watch_port {
type uint32;
}
-
+
leaf watch_group {
type uint32;
}
-
+
uses action:action-list;
}
}
}
-
+
grouping group-statistics {
-
+
leaf group-id {
type group-id;
}
-
+
leaf ref-count {
type yang:counter32;
}
-
+
leaf packet-count {
type yang:counter64;
- }
-
+ }
+
leaf byte-count {
type yang:counter64;
}
type yang:counter32;
}
}
-
+
container buckets {
list bucket-counter {
key "bucket-id";
leaf bucket-id {
type bucket-id;
}
-
+
leaf packet-count {
type yang:counter64;
- }
-
+ }
+
leaf byte-count {
type yang:counter64;
}
}
- }
+ }
}
grouping group-features {
-
- leaf-list group-types-supported {
- type identityref {
- base group-type;
- }
- }
-
- leaf-list group-capabilities-supported {
- type identityref {
- base group-capability;
- }
- }
+
+ leaf-list group-types-supported {
+ type identityref {
+ base group-type;
+ }
+ }
+
+ leaf-list group-capabilities-supported {
+ type identityref {
+ base group-capability;
+ }
+ }
leaf-list max-groups {
type uint32;
description "Maximum number of groups for each type";
max-elements 4;
+ ordered-by user;
}
-
+
leaf-list actions {
type uint32;
description "Bitmap number OFPAT_* that are supported";
max-elements 4;
+ ordered-by user;
}
}
-
+
grouping group-statistics-request {
list group-stats {
- key "group-id";
+ key "group-id";
leaf group-id {
type group-id;
- }
+ }
}
}
-
+
grouping group-statistics-reply {
-
+
list group-stats {
key "group-id";
uses group-statistics;
}
}
-
+
grouping group-desc-stats-reply {
-
+
list group-desc-stats {
- key "group-id";
+ key "group-id";
uses group;
}
}
-
+
grouping group-features-reply {
- uses group-features;
+ uses group-features;
}
-
+
grouping groups {
list group {
- key "group-id";
-
+ key "group-id";
+
uses group;
}