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 ietf-yang-types {
8 import ietf-inet-types {
11 import transportpce-routing-constraints {
12 prefix transportpce-routing-constraints;
14 import transportpce-pathDescription {
15 prefix transportpce-pathDescription;
17 import transportpce-common-types {
18 prefix transportpce-common-types;
20 import org-openroadm-common-types {
21 prefix org-openroadm-common-types;
22 revision-date 2019-05-31;
24 import org-openroadm-otn-common-types {
25 prefix org-openroadm-otn-common-types;
26 revision-date 2018-11-30;
28 import org-openroadm-resource-types {
29 prefix org-openroadm-resource-types;
30 revision-date 2018-11-30;
32 import org-openroadm-common-service-types {
33 prefix org-openroadm-common-service-types;
34 revision-date 2019-05-31;
36 import org-openroadm-service-format {
37 prefix org-openroadm-service-format;
38 revision-date 2019-05-31;
44 "transportPCE committers - ODL";
46 "YANG definitions of B & C interfaces (transportPCE). Adapted from service definition (openroadm)
47 Copyright © 2017 Orange, Inc. and others. All rights reserved.
50 Copyright of the Members of the Open ROADM MSA Agreement dated (c) 2016,
51 AT&T Intellectual Property. All other rights reserved.
53 Redistribution and use in source and binary forms, with or without modification,
54 are permitted provided that the following conditions are met:
56 * Redistributions of source code must retain the above copyright notice, this
57 list of conditions and the following disclaimer.
58 * Redistributions in binary form must reproduce the above copyright notice,
59 this list of conditions and the following disclaimer in the documentation and/or
60 other materials provided with the distribution.
61 * Neither the Members of the Open ROADM MSA Agreement nor the names of its
62 contributors may be used to endorse or promote products derived from this software
63 without specific prior written permission.
65 THIS SOFTWARE IS PROVIDED BY THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT ''AS IS''
66 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
67 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
68 IN NO EVENT THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT BE LIABLE FOR ANY DIRECT,
69 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
70 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
71 OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
72 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
73 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
74 POSSIBILITY OF SUCH DAMAGE";
79 // General consolidation to handle OTN and ONAP MDONS use case
94 typedef service-path-notification-types {
96 enum path-computation-request {
99 enum cancel-resource-reserve {
102 enum service-implementation-request {
105 enum service-delete {
111 typedef rpc-status-ex {
124 "extended status of RPC ";
127 grouping rpc-response-status-ex {
132 "Successful, Failed or Pending";
134 leaf status-message {
137 "Gives a more detailed reason for failure";
141 grouping response-parameters-sp {
142 container response-parameters {
143 uses transportpce-routing-constraints:routing-constraints-sp;
144 container path-description {
145 uses transportpce-pathDescription:path-description;
150 grouping service-endpoint-sp {
151 leaf service-format {
152 type org-openroadm-service-format:service-format;
155 "Format of the requested service: Ethernet, OTU, etc.";
158 when "../service-format!='OMS'" {
160 "service rate not applicable when service format is roadmline";
165 "Rate of the requested service in GBps";
167 leaf otu-service-rate {
168 when "../service-format='OTU'" {
170 "service rate not applicable when service format is OTU";
173 base org-openroadm-otn-common-types:otu-rate-identity;
177 "OTU Rate of the requested service";
179 leaf odu-service-rate {
180 when "../service-format='ODU'" {
182 "service rate not applicable when service format is ODU";
185 base org-openroadm-otn-common-types:odu-rate-identity;
189 "OTU Rate of the requested service";
191 leaf other-service-format-and-rate {
194 "This value encodes both the service format and the rate supported.
195 This field should not be specified when service format != other.";
206 container tx-direction {
207 leaf logical-connection-point {
210 "PCE works on topology --> change from port (device) to node-id+logical-connection-point
211 (topology) assuming Portmapping will be used by both the Renderer
212 and the SH to make the conversion from device to topology";
214 uses org-openroadm-common-service-types:service-port;
216 // uses service-tail;
218 container rx-direction {
219 leaf logical-connection-point {
222 "PCE works on topology --> change from port (device) to node-id+logical-connection-point
223 (topology) assuming Portmapping will be used by both the Renderer
224 and the SH to make the conversion from device to topology";
226 uses org-openroadm-common-service-types:service-port;
228 // uses service-tail;
232 grouping service-handler-header {
233 container service-handler-header {
241 grouping service-path {
242 leaf service-path-name {
246 "Identifier for the service-path to be calculated by the PCE";
248 uses service-handler-header;
249 container service-a-end {
250 uses service-endpoint-sp;
252 container service-z-end {
253 uses service-endpoint-sp;
255 uses transportpce-routing-constraints:routing-constraints-sp;
259 "Latency on service";
261 leaf-list fiber-span-srlgs {
264 "Shared risk link group identifiers";
266 list equipment-srgs {
268 uses org-openroadm-resource-types:srg-number;
270 leaf-list supporting-service-name {
273 "The service name that this runs over top. If connection-type is service, then this is the related
274 connection-type = infrastructure service, for example.";
276 container path-description {
277 uses transportpce-pathDescription:path-description;