+++ /dev/null
-module transportpce-routing-constraints {
- namespace "http://org/transportpce/B-C-interface/routing/constraints";
- prefix transportpce-routing-constraints;
-
- organization
- "transportPCE";
- contact
- "transportPCE committers - ODL";
- description
- "YANG definitions of B interface (transportPCE). Adapted from service definition (openroadm)
- Copyright © 2017 Orange, Inc. and others. All rights reserved.
- openroadm copyright:
- Copyright of the Members of the Open ROADM MSA Agreement dated (c) 2016,
- AT&T Intellectual Property. All other rights reserved.
-
- Redistribution and use in source and binary forms, with or without modification,
- are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- list of conditions and the following disclaimer.
- * Redistributions in binary form must reproduce the above copyright notice,
- this list of conditions and the following disclaimer in the documentation and/or
- other materials provided with the distribution.
- * Neither the Members of the Open ROADM MSA Agreement nor the names of its
- contributors may be used to endorse or promote products derived from this software
- without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT ''AS IS''
- AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
- IN NO EVENT THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT BE LIABLE FOR ANY DIRECT,
- INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
- NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
- OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- POSSIBILITY OF SUCH DAMAGE";
-
- revision 2017-10-17 {
- description
- "Version 1.6";
- }
- revision 2017-04-26 {
- description
- "Version 1.5";
- }
-
- grouping common-constraints-sp {
- leaf-list SRLG {
- type string;
- }
- leaf-list clli {
- type string;
- }
- leaf-list node-id {
- type string;
- }
- }
-
- grouping ordered-constraints-sp {
- description
- "";
- container hop-type {
- choice hop-type {
- case SRLG {
- leaf SRLG {
- type string;
- //to be clarified with topology model
- }
- }
- case clli {
- leaf clli {
- type string;
- //to be clarified with topology model
- }
- }
- case node {
- leaf node-id {
- type string;
- // to be clarified with topology model
- }
- }
- }
- }
- }
-
- grouping diversity-existing-service-contraints-sp {
- leaf-list existing-service {
- type string;
- description
- "Diverse from existing services identified by facility CLFI";
- }
- container existing-service-applicability {
- leaf clli {
- type boolean;
- }
- leaf node {
- type boolean;
- }
- leaf srlg {
- type boolean;
- }
- }
- }
-
- grouping routing-constraints-sp {
- container hard-constraints {
- uses constraints-sp;
- }
- container soft-constraints {
- uses constraints-sp;
- }
- leaf pce-metric {
- type enumeration {
- enum hop-count;
- enum propagation-delay;
- enum TE-metric;
- enum IGP-metric;
- }
- }
- leaf locally-protected-links {
- type boolean;
- description
- "indicates whether it must use locally protected links or not";
- }
- }
-
- grouping constraints-sp {
- leaf-list customer-code {
- type string;
- }
- choice co-routing-or-general {
- case general {
- container diversity {
- uses diversity-existing-service-contraints-sp;
- }
- container exclude_ {
- uses common-constraints-sp;
- leaf-list supporting-service-name {
- type string;
- description
- "Supporting service(s) to exclude from this route.";
- }
- leaf affinity {
- type uint32;
- }
- }
- container include_ {
- list ordered-hops {
- key "hop-number";
- leaf hop-number {
- type uint16;
- description
- "designates the id of the hop: node-id, SRLG-id, site-id";
- }
- uses ordered-constraints-sp;
- }
- }
- container latency {
- description
- "Maximum latency allowed";
- leaf max-latency {
- type uint32;
- units "ms";
- }
- }
- }
- case co-routing {
- container co-routing {
- leaf-list existing-service {
- type string;
- description
- "Diverse from existing services identified by facility CLFI";
- }
- }
- }
- }
- }
-}