1 module transportpce-pce {
2 namespace "http://org/opendaylight/transportpce/pce";
3 prefix org-opendaylight-transportpce-pce;
5 import org-openroadm-routing-constraints {
6 prefix org-openroadm-routing-constraints;
8 import org-openroadm-common-service-types {
9 prefix org-openroadm-common-service-types;
11 import transportpce-common-service-path-types {
12 prefix transportpce-common-service-path-types;
14 import transportpce-pathDescription {
15 prefix transportpce-pathDescription;
17 import gnpy-path-computation-simplified {
24 "transportPCE committers - ODL";
26 "YANG definitions of B interface (transportPCE). Adapted from service definition (openroadm)
27 Copyright © 2017 Orange, Inc. and others. All rights reserved.
30 Copyright of the Members of the Open ROADM MSA Agreement dated (c) 2016,
31 AT&T Intellectual Property. All other rights reserved.
33 Redistribution and use in source and binary forms, with or without modification,
34 are permitted provided that the following conditions are met:
36 * Redistributions of source code must retain the above copyright notice, this
37 list of conditions and the following disclaimer.
38 * Redistributions in binary form must reproduce the above copyright notice,
39 this list of conditions and the following disclaimer in the documentation and/or
40 other materials provided with the distribution.
41 * Neither the Members of the Open ROADM MSA Agreement nor the names of its
42 contributors may be used to endorse or promote products derived from this software
43 without specific prior written permission.
45 THIS SOFTWARE IS PROVIDED BY THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT ''AS IS''
46 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
47 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
48 IN NO EVENT THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT BE LIABLE FOR ANY DIRECT,
49 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
50 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
51 OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
52 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
53 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
54 POSSIBILITY OF SUCH DAMAGE";
59 "Add customer-name to path-computation-request input to check in controller-customization if the customer's
60 services need specific handling";
64 "Add pce-constraint-mode enum to be able to disinguish the way to manage node include constraints inside the
69 "Implement the RPC path-computation-reroute-request (only for reroute purposes) that computes a service path of
70 an existing service in order to reroute it";
74 "change fraction digits from 2 to 6 for accumulative-value leaf, from 2 to 6 to be compliant with Gnpy";
78 "Add in path-computation-request input the pce-routing-metric.
79 Replace transportpce-routing-constraints by org-openroadm-routing-constraints";
102 typedef pce-constraint-mode {
113 grouping stubpce-path-description {
118 "Identifier for the pathDescription to be created in the ROADM
119 network, e.g., CLFI, CLCI, etc.";
121 uses transportpce-pathDescription:path-description;
138 "true : feasible path / False : non-feasible.";
140 choice response-type {
145 uses gnpypc:no-path-info;
149 "Path computation service.";
150 uses path-performance;
156 grouping path-performance {
158 "TE generic path properties grouping";
159 container path-properties {
162 "The TE path properties";
166 "TE path metric type";
169 base gnpypc:path-metric-type;
172 leaf accumulative-value {
181 rpc path-computation-request {
187 "Identifier for the service to be created in the ROADM network,
188 e.g., CLFI, CLCI, etc. This is reported against the service, but
189 may not get reflected in the service in the network.";
194 "name of the customer that may be declared in controller-customization,
195 to define a specific way to handle constraints associated with this
198 leaf resource-reserve {
202 "indicates if resources (from local PCE topology) must be reserved
203 until further notice (cancel-resource-reserve or topology update)";
205 leaf pce-routing-metric {
206 type transportpce-common-service-path-types:pce-metric;
208 uses transportpce-common-service-path-types:service-handler-header;
209 container service-a-end {
210 uses transportpce-common-service-path-types:service-endpoint-sp;
212 container service-z-end {
213 uses transportpce-common-service-path-types:service-endpoint-sp;
215 uses org-openroadm-routing-constraints:routing-constraints;
216 uses org-openroadm-common-service-types:routing-metric;
219 uses org-openroadm-common-service-types:configuration-response-common;
220 uses transportpce-common-service-path-types:response-parameters-sp;
225 rpc path-computation-reroute-request {
227 container endpoints {
229 "Indicates the endpoints termination-point of the service to reroute";
239 leaf pce-routing-metric {
240 type transportpce-common-service-path-types:pce-metric;
242 uses transportpce-common-service-path-types:service-handler-header;
243 container service-a-end {
244 uses transportpce-common-service-path-types:service-endpoint-sp;
246 container service-z-end {
247 uses transportpce-common-service-path-types:service-endpoint-sp;
249 uses org-openroadm-routing-constraints:routing-constraints;
250 uses org-openroadm-common-service-types:routing-metric;
253 uses org-openroadm-common-service-types:configuration-response-common;
257 rpc cancel-resource-reserve {
263 uses transportpce-common-service-path-types:service-handler-header;
266 uses org-openroadm-common-service-types:configuration-response-common;
270 notification service-path-rpc-result {
272 "This Notification indicates result of service RPC";
273 leaf notification-type {
274 type transportpce-common-service-path-types:service-path-notification-types;
276 container path-description {
277 uses transportpce-pathDescription:path-description;
279 uses transportpce-common-service-path-types:rpc-response-status-ex;
280 uses org-openroadm-common-service-types:service-notification-result;
281 uses org-openroadm-common-service-types:routing-metric;
284 container path-description-list {
286 "List of pathDescription. Can only be created, deleted, modified,
287 etc. using special RPCs.";
288 list pathDescriptions {
290 uses stubpce-path-description;
294 container spectrum-assignment {
296 "Spectrum assignment management using index steps and flexgrid property";
301 "Begin index of spectrum assignment";
307 "End index of spectrum assignment";
313 "Set it to true for flexgrid, false otherwise";