blob: 8dacc58e224b58d43f225462e7a0003fbb2ee131 [file] [log] [blame]
Marc De Leenheerf20c7fb2017-05-05 10:24:41 -07001module org-openroadm-roadm {
2 namespace "http://org/openroadm/roadm";
3 prefix org-openroadm-roadm;
4
5 import org-openroadm-srg {
6 prefix org-openroadm-srg;
7 }
8 import org-openroadm-degree {
9 prefix org-openroadm-degree;
10 }
11 import ietf-inet-types {
12 prefix inet;
13 }
14 import org-openroadm-common-types {
15 prefix org-openroadm-common-types;
16 }
17
18 organization
19 "OPEN ROADM MSA";
20 contact
21 "OpenROADM.org.";
22 description
23 "YANG definitions for network view of a ROADM
24
25 Copyright of the Members of the Open ROADM MSA Agreement dated (c) 2016,
26 AT&T Intellectual Property. All other rights reserved.
27
28 Redistribution and use in source and binary forms, with or without modification,
29 are permitted provided that the following conditions are met:
30
31 * Redistributions of source code must retain the above copyright notice, this
32 list of conditions and the following disclaimer.
33 * Redistributions in binary form must reproduce the above copyright notice,
34 this list of conditions and the following disclaimer in the documentation and/or
35 other materials provided with the distribution.
36 * Neither the Members of the Open ROADM MSA Agreement nor the names of its
37 contributors may be used to endorse or promote products derived from this software
38 without specific prior written permission.
39
40 THIS SOFTWARE IS PROVIDED BY THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT ''AS IS''
41 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
42 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
43 IN NO EVENT THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT BE LIABLE FOR ANY DIRECT,
44 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
45 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
46 OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
47 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
48 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
49 POSSIBILITY OF SUCH DAMAGE.";
50
51 revision 2016-10-14 {
52 description
53 "Version 1.2";
54 }
55
56 grouping open-roadm {
57 list nodes {
58 key "clli";
59 leaf clli {
60 type string;
61 description
62 "Location of CLLI where ROADM resides";
63 }
64 list ids {
65 key "node-number node-type";
66 leaf node-number {
67 type uint32;
68 description
69 "Number assigned to a ROADM node in a
70 given office";
71 }
72 leaf node-id {
73 type string;
74 description
75 "Network-wide unique identifier for
76 a ROADM node";
77 }
78 leaf node-type {
79 type org-openroadm-common-types:node-types;
80 description
81 "Identifier for the node type";
82 }
83 leaf vendor {
84 type string;
85 description
86 "Identifier of the supplier
87 for the ROADM equipment";
88 }
89 leaf model {
90 type string;
91 description
92 "Identifier of the supplier's ROADM equipment";
93 }
94 leaf domain-subnetwork {
95 type string;
96 description
97 "Specific Domain-Subnetwork in which the ROADM node resides";
98 }
99 leaf ip {
100 type inet:ip-address;
101 description
102 "IP address assigned to the ROADM node";
103 }
104 leaf relay-rack {
105 type string;
106 description
107 "Frame Identification Code (FIC)";
108 }
109 leaf shelf {
110 type uint32;
111 }
112 leaf degree-supported {
113 type uint16;
114 description
115 "No. of degrees supported by the node";
116 }
117 leaf srg-supported {
118 type uint16;
119 description
120 "No. of SRGs supported by the node";
121 }
122 list connectivity-map {
123 key "logical-link-name";
124 leaf logical-link-name {
125 type string;
126 }
127 leaf logical-link-type{
128 type enumeration{
129 enum "Express-link"{
130 value 1;
131 }
132 enum "Add-link"{
133 value 2;
134 }
135 enum "Drop-link"{
136 value 3;
137 }
138 }
139 }
140 container source{
141 choice resource{
142 case degree{
143 leaf degree-number{
144 type uint16;
145 }
146 }
147 case srg{
148 leaf srg-number{
149 type uint16;
150 }
151 }
152 }
153 }
154 container destination{
155 choice resource{
156 case degree{
157 leaf degree-number{
158 type uint16;
159 }
160 }
161 case srg{
162 leaf srg-number{
163 type uint16;
164 }
165 }
166 }
167 }
168 description
169 "List of logical links to represent
170 1. Express traffic between ROADM degrees
171 2. Drop traffic from ROADM degrees and SRGs
172 3. Add traffic from SRGs to ROADM degrees";
173 }
174 uses org-openroadm-degree:roadm-degree;
175 uses org-openroadm-srg:shared-risk-group;
176 }
177 }
178 }
179}