blob: 7c1f1b9ffdc58c3934d43ee6ec74c153da11cc00 [file] [log] [blame]
Scott Bakerfdbad762022-01-03 16:00:45 -08001// SPDX-FileCopyrightText: 2021 Open Networking Foundation
2//
3// SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
4
Sean Condon11d6f422022-01-14 13:02:03 +00005submodule onf-template {
6 belongs-to onf-enterprise { prefix ent; }
Scott Bakerfdbad762022-01-03 16:00:45 -08007
8 import ietf-yang-types{ prefix yg; }
9 import onf-aether-types{ prefix at; }
10
11 organization "Open Networking Foundation.";
12 contact "Scott Baker";
13 description
14 "The aether vcs-template holds common parameters used
15 by a virtual connectivity service. Templates are used to
16 populate a VCS.";
17
Sean Condon11d6f422022-01-14 13:02:03 +000018 revision "2022-01-14" {
19 description "Refactored as submodule";
20 reference "RFC 6020";
21 }
22
Scott Bakerfdbad762022-01-03 16:00:45 -080023 revision "2021-09-10" {
24 description "An Aether Virtual Cellular Service Template";
25 reference "RFC 6087";
26 }
27
28 typedef template-id {
29 type yg:yang-identifier {
30 length 1..32;
31 }
32 description "The typedef for template-id";
33 }
34
Sean Condon11d6f422022-01-14 13:02:03 +000035 grouping template {
36 description "The template grouping";
Scott Bakerfdbad762022-01-03 16:00:45 -080037
38 list template {
Sean Condon11d6f422022-01-14 13:02:03 +000039 key "tp-id";
Scott Bakerfdbad762022-01-03 16:00:45 -080040 description
41 "List of vcs templates";
42
Sean Condon11d6f422022-01-14 13:02:03 +000043 leaf tp-id {
Scott Bakerfdbad762022-01-03 16:00:45 -080044 type template-id;
45 description "ID for this vcs template.";
46 }
47
48 leaf display-name {
49 type string {
50 length 1..80;
51 }
52 description "display name to use in GUI or CLI";
53 }
54
55 leaf sst {
56 type at:sst;
57 description "Slice/Service type";
58 }
59
60 leaf sd {
61 type at:sd;
62 description "Slice differentiator";
63 }
64
65 container slice {
66 description "Per-Slice QOS Settings";
67 container mbr {
68 description "Maximum bitrate";
69 leaf uplink {
70 type at:bitrate;
71 units bps;
72 description "Per-Slice MBR uplink data rate in bps";
73 }
74
75 leaf downlink {
76 type at:bitrate;
77 units bps;
78 description "Per-Slice MBR downlink data rate in bps";
79 }
80
81 leaf uplink-burst-size {
82 type at:burst;
83 units bytes;
84 description "Per-Slice Uplink burst size";
85 }
86
87 leaf downlink-burst-size {
88 type at:burst;
89 units bytes;
90 description "Per-Slice Downlink burst size";
91 }
92 }
93 }
94
95 leaf default-behavior {
96 type at:behavior;
97 mandatory true;
98 description
99 "Default behavior if no filter rules match";
100 }
101
102 leaf description {
103 type at:description;
104 description "description of this vcs template";
105 }
106 }
107 }
108}