blob: a96b9bcfb9757e2e0cf3946ce6acbd6e5985032f [file] [log] [blame]
Scott Bakerfdbad762022-01-03 16:00:45 -08001// SPDX-FileCopyrightText: 2021 Open Networking Foundation
2//
Sean Condon160ec1d2022-02-08 12:58:25 +00003// SPDX-License-Identifier: Apache-2.0
Scott Bakerfdbad762022-01-03 16:00:45 -08004
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
Scott Bakerfdbad762022-01-03 16:00:45 -08008 import onf-aether-types{ prefix at; }
9
10 organization "Open Networking Foundation.";
11 contact "Scott Baker";
12 description
Sean Condon24297da2022-01-27 09:50:34 +000013 "The aether slice-template holds common parameters used
14 by a Slice. Templates are used to
15 populate a Slice.";
Scott Bakerfdbad762022-01-03 16:00:45 -080016
Sean Condon11d6f422022-01-14 13:02:03 +000017 revision "2022-01-14" {
18 description "Refactored as submodule";
19 reference "RFC 6020";
20 }
21
Scott Bakerfdbad762022-01-03 16:00:45 -080022 revision "2021-09-10" {
Sean Condon24297da2022-01-27 09:50:34 +000023 description "An Aether Slice Template";
Scott Bakerfdbad762022-01-03 16:00:45 -080024 reference "RFC 6087";
25 }
26
27 typedef template-id {
Scott Baker40a79562022-02-16 15:04:50 -080028 type at:aether-identifier;
Scott Bakerfdbad762022-01-03 16:00:45 -080029 description "The typedef for template-id";
30 }
31
Sean Condon11d6f422022-01-14 13:02:03 +000032 grouping template {
33 description "The template grouping";
Scott Bakerfdbad762022-01-03 16:00:45 -080034
35 list template {
Sean Condon9f7966e2022-02-03 10:55:06 +000036 key "template-id";
Scott Bakerfdbad762022-01-03 16:00:45 -080037 description
Sean Condon24297da2022-01-27 09:50:34 +000038 "List of slice templates";
Scott Bakerfdbad762022-01-03 16:00:45 -080039
Sean Condon9f7966e2022-02-03 10:55:06 +000040 leaf template-id {
Scott Bakerfdbad762022-01-03 16:00:45 -080041 type template-id;
Sean Condon24297da2022-01-27 09:50:34 +000042 description "ID for this slice template.";
Scott Bakerfdbad762022-01-03 16:00:45 -080043 }
44
Sean Condon9f7966e2022-02-03 10:55:06 +000045 uses at:desc-display-name;
Scott Bakerfdbad762022-01-03 16:00:45 -080046
47 leaf sst {
48 type at:sst;
49 description "Slice/Service type";
50 }
51
52 leaf sd {
53 type at:sd;
54 description "Slice differentiator";
55 }
56
Sean Condon24297da2022-01-27 09:50:34 +000057 container mbr {
58 description "Per-Slice QOS Settings Maximum Bit Rate";
59 leaf uplink {
60 type at:bitrate;
61 units bps;
62 description "Per-Slice MBR uplink data rate in bps";
63 }
Scott Bakerfdbad762022-01-03 16:00:45 -080064
Sean Condon24297da2022-01-27 09:50:34 +000065 leaf downlink {
66 type at:bitrate;
67 units bps;
68 description "Per-Slice MBR downlink data rate in bps";
69 }
Scott Bakerfdbad762022-01-03 16:00:45 -080070
Sean Condon24297da2022-01-27 09:50:34 +000071 leaf uplink-burst-size {
72 type at:burst;
73 units bytes;
74 description "Per-Slice Uplink burst size";
75 }
Scott Bakerfdbad762022-01-03 16:00:45 -080076
Sean Condon24297da2022-01-27 09:50:34 +000077 leaf downlink-burst-size {
78 type at:burst;
79 units bytes;
80 description "Per-Slice Downlink burst size";
Scott Bakerfdbad762022-01-03 16:00:45 -080081 }
82 }
83
84 leaf default-behavior {
85 type at:behavior;
86 mandatory true;
87 description
88 "Default behavior if no filter rules match";
89 }
Scott Bakerfdbad762022-01-03 16:00:45 -080090 }
91 }
92}