blob: 334dc113b8e0f1784ae8cab7b3dafafdbea217fa [file] [log] [blame]
Scott Bakerc9d3d842021-09-17 11:32:53 -07001// SPDX-FileCopyrightText: 2021 Open Networking Foundation
2//
3// SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
4
5module onf-template {
6 namespace "http://opennetworking.org/aether/template";
7 prefix tp;
8
9 import ietf-yang-types{ prefix yg; }
10 import onf-aether-types{ prefix at; }
Scott Bakerc9d3d842021-09-17 11:32:53 -070011
12 organization "Open Networking Foundation.";
13 contact "Scott Baker";
14 description
15 "The aether vcs-template holds common parameters used
16 by a virtual connectivity service. Templates are used to
17 populate a VCS.";
18
Scott Baker36c96142021-10-19 14:13:30 -070019 revision "2021-09-10" {
Scott Bakerc9d3d842021-09-17 11:32:53 -070020 description "An Aether Virtual Cellular Service Template";
21 reference "RFC 6087";
22 }
23
24 typedef template-id {
25 type yg:yang-identifier {
26 length 1..32;
27 }
28 }
29
30 container template {
31 description "The top level container";
32
33 list template {
34 key "id";
35 description
36 "List of vcs templates";
37
38 leaf id {
39 type template-id;
40 description "ID for this vcs template.";
41 }
42
43 leaf display-name {
44 type string {
45 length 1..80;
46 }
47 description "display name to use in GUI or CLI";
48 }
49
50 leaf sst {
51 type at:sst;
52 description "Slice/Service type";
53 }
54
55 leaf sd {
56 type at:sd;
57 description "Slice differentiator";
58 }
59
Scott Bakerc9d3d842021-09-17 11:32:53 -070060 container slice {
61 description "Per-Slice QOS Settings";
62 container mbr {
63 description "Maximum bitrate";
64 leaf uplink {
65 type at:bitrate;
66 units bps;
Scott Baker3f1cb272021-10-26 14:28:05 -070067 description "Per-Slice MBR uplink data rate in bps";
Scott Bakerc9d3d842021-09-17 11:32:53 -070068 }
69
70 leaf downlink {
71 type at:bitrate;
72 units bps;
Scott Baker3f1cb272021-10-26 14:28:05 -070073 description "Per-Slice MBR downlink data rate in bps";
Scott Bakerc9d3d842021-09-17 11:32:53 -070074 }
Scott Baker75ff25b2021-10-27 18:46:23 -070075
76 leaf uplink-burst-size {
77 type at:burst;
78 units bytes;
79 description "Per-Slice Uplink burst size";
80 }
81
82 leaf downlink-burst-size {
83 type at:burst;
84 units bytes;
85 description "Per-Slice Downlink burst size";
86 }
Scott Bakerc9d3d842021-09-17 11:32:53 -070087 }
Scott Baker36c96142021-10-19 14:13:30 -070088 }
Scott Bakerc9d3d842021-09-17 11:32:53 -070089
Scott Baker36c96142021-10-19 14:13:30 -070090 leaf default-behavior {
91 type at:behavior;
92 mandatory true;
Scott Bakerc9d3d842021-09-17 11:32:53 -070093 description
Scott Baker36c96142021-10-19 14:13:30 -070094 "Default behavior if no filter rules match";
Scott Baker3f1cb272021-10-26 14:28:05 -070095 }
Scott Bakerc9d3d842021-09-17 11:32:53 -070096
97 leaf description {
98 type at:description;
99 description "description of this vcs template";
100 }
101 }
102 }
103}