4 * Copyright 2018 Telefonica Investigacion y Desarrollo S.A.U.
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
24 namespace "urn:etsi:osm:yang:nst";
35 import instantiation-parameters {
36 prefix "instantiation-parameters";
39 import ietf-inet-types {
45 description "Initial version";
49 typedef connection-points {
54 typedef network-slice-type {
57 description "enhanced Mobile Broadband slice";
60 description "Ultra Reliable Low Latency Communications slice";
63 description "massive Machine Type Communications slice";
68 typedef resource-type {
70 enum delay-critical-GBR {
71 description "delay critical guaranted bit rate";
74 description "guaranted bit rate";
77 description "NON guaranted bit rate";
83 description "List of NetSlice Subnet Virtual Link Descriptors.";
85 uses nsd-base:vld-common;
87 list nss-connection-point-ref {
89 "A list of references to connection points.";
90 key "nss-ref nsd-connection-point-ref";
93 description "Reference to nsd";
95 path "/nst:nst/nst:netslice-subnet/nst:id";
99 leaf nsd-connection-point-ref {
100 description "A reference to a connection point name";
102 path "/nsd:nsd-catalog/nsd:nsd/nsd:connection-point/nsd:name";
107 description "IP address of the connection point";
108 type inet:ip-address;
116 leaf slice-service-type {
117 description "Network slice service type ";
118 type network-slice-type;
121 leaf slice-differentiator {
122 description "Network slice differentiator";
129 description "Quality of service identifier";
134 description "Quality of service resource type";
137 leaf priority-level {
138 description "Priority level of the service";
141 leaf packet-delay-budget {
142 description "Packet delay budget in miliseconds (ms)";
145 leaf packet-error-rate {
146 description "Packet error rate (PER) given in powers of ten";
149 leaf default-max-data-burst {
150 description "Maximum data burst given in bytes (B)";
155 grouping netslice-subnet {
157 description "Identifier or name for the netslice-subnet in NST scope.";
164 description "Description of the NSD.";
168 description "NSS is shared between NS";
173 description "Reference to catalog NSD";
176 path "/nsd:nsd-catalog/nsd:nsd/nsd:id";
179 container instantiation-parameters {
180 uses instantiation-parameters:ns_params;
185 grouping slice-connection-points {
186 description "List for external connection points. Each NS has one or more external connection
187 points. As the name implies that external connection points are used for connecting
188 the NS to other NS or to external networks. Each NS exposes these connection points
189 to the orchestrator. The orchestrator can construct network service chains by
190 connecting the connection points between different NS.";
192 uses nsd-base:nsd-connection-point-common;
195 description "Logical connection of the CP to a NSVLD or to a NSD CP";
196 case netslice-vld-ref {
197 leaf netslice-vld-id-ref {
198 description "ID reference to a NSVLD in the NS";
200 path "../../netslice-vld/id";
205 case nsd-connection-point-ref {
207 description "A reference to a nsd.";
209 path "/nsd:nsd-catalog/nsd:nsd/nsd:id";
212 leaf nsd-connection-point-ref {
215 path "/nsd:nsd-catalog/nsd:nsd/nsd:connection-point/nsd:name";
224 uses nsd-base:rsp-common;
226 list nsd-connection-point-ref {
228 "A list of references to connection points.";
232 description "Reference to member-vnf within constituent-vnfds";
234 path "/nsd:nsd-catalog/nsd:nsd/nsd:id";
240 "A number that denotes the order of a NSD in a chain";
242 leaf nsd-connection-point-ref {
244 path "/nsd:nsd-catalog/nsd:nsd/nsd:connection-point/nsd:name";
250 grouping classifier {
251 uses nsd-base:classifier-common;
255 path "/nsd:nsd-catalog/nsd:nsd/nsd:id";
259 leaf nsd-connection-point-ref {
262 path "/nsd:nsd-catalog/nsd:nsd/nsd:connection-point/nsd:name";
267 grouping netslicefgd {
269 uses nsd-base:fgd-common;
273 "List of Rendered Service Paths (RSP).";
280 "List of classifier rules.";
285 grouping network-slice{
296 container SNSSAI-identifier {
299 container quality-of-service {
302 list netslice-subnet {//list with multiple network service elements
304 uses netslice-subnet;
306 list netslice-connection-point {
308 uses slice-connection-points;
320 //containers definitions