blob: f8fe5bdf86db9ac01c115b4ea7eacc171cc67d4f [file] [log] [blame]
// SPDX-FileCopyrightText: 2021 Open Networking Foundation
//
// SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
submodule onf-priority-traffic-rule {
belongs-to onf-enterprise { prefix ent; }
import ietf-yang-types{ prefix yg; }
import onf-aether-types{ prefix at; }
include onf-device;
include onf-traffic-class;
include onf-application;
organization "Open Networking Foundation.";
contact "Scott Baker";
description
"The aether traffic class associates qos constants
with a named class of service";
revision "2022-01-19" {
description "An Aether Priority Traffic Rule";
reference "RFC 6087";
}
typedef priority-traffic-rule-id {
type yg:yang-identifier {
length 1..32;
}
description "The typedef for priority traffic rule id";
}
grouping priority-traffic-rule {
description "The top level container";
list priority-traffic-rule {
key "ptr-id";
unique "device endpoint";
description
"List of priority traffic rules";
leaf ptr-id {
type priority-traffic-rule-id;
description "ID for this priority traffic class.";
}
leaf display-name {
type string {
length 1..80;
}
description "display name to use in GUI or CLI";
}
leaf device {
type leafref {
path "../../device/dev-id";
}
mandatory true;
description
"Link to device";
}
leaf application {
type leafref {
path "../../../application/app-id";
}
mandatory true;
description
"Link to application";
}
leaf endpoint {
type leafref {
path "../../../application/endpoint/endpoint-id";
}
mandatory true;
description
"Link to endpoint in application";
}
container mbr {
description "Maximum bitrate";
leaf uplink {
type at:bitrate;
units bps;
description "Per-Device per-Application MBR uplink data rate in bps";
}
leaf downlink {
type at:bitrate;
units bps;
description "Per-Device per application MBR downlink data rate in bps";
}
}
container gbr {
description "Guaranteed bitrate";
leaf uplink {
type at:bitrate;
units bps;
description "Per-Device per-Application GBR uplink data rate in bps";
}
leaf downlink {
type at:bitrate;
units bps;
description "Per-Device per application GBR downlink data rate in bps";
}
}
leaf traffic-class {
type leafref {
path "../../../traffic-class/tc-id";
}
description
"Link to traffic class";
}
leaf description {
type at:description;
description "description of this priority traffic rule";
}
}
}
}