1 module transportpce-common-service-path-types {
2 namespace "http://org/transportpce/B-C-interface/service/types";
3 prefix transportpce-common-service-path-types;
5 import transportpce-routing-constraints {
6 prefix transportpce-routing-constraints;
8 import transportpce-pathDescription {
9 prefix transportpce-pathDescription;
11 import org-openroadm-otn-common-types {
12 prefix org-openroadm-otn-common-types;
14 import org-openroadm-resource-types {
15 prefix org-openroadm-resource-types;
16 revision-date 2018-11-30;
18 import org-openroadm-common-service-types {
19 prefix org-openroadm-common-service-types;
21 import org-openroadm-service-format {
22 prefix org-openroadm-service-format;
23 revision-date 2019-05-31;
29 "transportPCE committers - ODL";
31 "YANG definitions of B & C interfaces (transportPCE). Adapted from service definition (openroadm)
32 Copyright © 2017 Orange, Inc. and others. All rights reserved.
35 Copyright of the Members of the Open ROADM MSA Agreement dated (c) 2016,
36 AT&T Intellectual Property. All other rights reserved.
38 Redistribution and use in source and binary forms, with or without modification,
39 are permitted provided that the following conditions are met:
41 * Redistributions of source code must retain the above copyright notice, this
42 list of conditions and the following disclaimer.
43 * Redistributions in binary form must reproduce the above copyright notice,
44 this list of conditions and the following disclaimer in the documentation and/or
45 other materials provided with the distribution.
46 * Neither the Members of the Open ROADM MSA Agreement nor the names of its
47 contributors may be used to endorse or promote products derived from this software
48 without specific prior written permission.
50 THIS SOFTWARE IS PROVIDED BY THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT ''AS IS''
51 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
52 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
53 IN NO EVENT THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT BE LIABLE FOR ANY DIRECT,
54 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
55 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
56 OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
57 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
58 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
59 POSSIBILITY OF SUCH DAMAGE";
64 // General consolidation to handle OTN and ONAP MDONS use case
79 typedef service-path-notification-types {
81 enum path-computation-request {
84 enum cancel-resource-reserve {
87 enum service-implementation-request {
96 typedef rpc-status-ex {
109 "extended status of RPC ";
112 grouping rpc-response-status-ex {
117 "Successful, Failed or Pending";
119 leaf status-message {
122 "Gives a more detailed reason for failure";
126 grouping response-parameters-sp {
127 container response-parameters {
128 uses transportpce-routing-constraints:routing-constraints-sp;
129 container path-description {
130 uses transportpce-pathDescription:path-description;
135 grouping service-endpoint-sp {
136 leaf service-format {
137 type org-openroadm-service-format:service-format;
140 "Format of the requested service: Ethernet, OTU, etc.";
143 when "../service-format!='OMS'" {
145 "service rate not applicable when service format is roadmline";
150 "Rate of the requested service in GBps";
152 leaf otu-service-rate {
153 when "../service-format='OTU'" {
155 "service rate not applicable when service format is OTU";
158 base org-openroadm-otn-common-types:otu-rate-identity;
162 "OTU Rate of the requested service";
164 leaf odu-service-rate {
165 when "../service-format='ODU'" {
167 "service rate not applicable when service format is ODU";
170 base org-openroadm-otn-common-types:odu-rate-identity;
174 "OTU Rate of the requested service";
176 leaf other-service-format-and-rate {
179 "This value encodes both the service format and the rate supported.
180 This field should not be specified when service format != other.";
191 container tx-direction {
192 leaf logical-connection-point {
195 "PCE works on topology --> change from port (device) to node-id+logical-connection-point
196 (topology) assuming Portmapping will be used by both the Renderer
197 and the SH to make the conversion from device to topology";
199 uses org-openroadm-common-service-types:service-port;
201 // uses service-tail;
203 container rx-direction {
204 leaf logical-connection-point {
207 "PCE works on topology --> change from port (device) to node-id+logical-connection-point
208 (topology) assuming Portmapping will be used by both the Renderer
209 and the SH to make the conversion from device to topology";
211 uses org-openroadm-common-service-types:service-port;
213 // uses service-tail;
217 grouping service-handler-header {
218 container service-handler-header {
226 grouping service-path {
227 leaf service-path-name {
231 "Identifier for the service-path to be calculated by the PCE";
233 uses service-handler-header;
234 container service-a-end {
235 uses service-endpoint-sp;
237 container service-z-end {
238 uses service-endpoint-sp;
240 uses transportpce-routing-constraints:routing-constraints-sp;
244 "Latency on service";
246 leaf-list fiber-span-srlgs {
249 "Shared risk link group identifiers";
251 list equipment-srgs {
253 uses org-openroadm-resource-types:srg-number;
255 leaf-list supporting-service-name {
258 "The service name that this runs over top. If connection-type is service, then this is the related
259 connection-type = infrastructure service, for example.";
261 container path-description {
262 uses transportpce-pathDescription:path-description;