| // 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"; |
| } |
| } |
| } |
| } |