Add seed code for sdnr app based on ONF Centennial
[ccsdk/apps.git] / sdnr / wireless-transport / code-Carbon-SR1 / apps / devicemodel / src / main / yang / MicrowaveModel-ObjectClasses-EthernetContainer@2016-09-02.yang
1 module MicrowaveModel-ObjectClasses-EthernetContainer {
2     namespace "uri:onf:MicrowaveModel-ObjectClasses-EthernetContainer";
3     prefix MicrowaveModel-ObjectClasses-EthernetContainer;
4
5     import CoreModel-CoreNetworkModule-ObjectClasses {
6         prefix CoreModel-CoreNetworkModule-ObjectClasses;
7     }
8     import MicrowaveModel-TypeDefinitions {
9         prefix MicrowaveModel-TypeDefinitions;
10     }
11     import CoreModel-CoreFoundationModule-TypeDefinitions {
12         prefix CoreModel-CoreFoundationModule-TypeDefinitions;
13     }
14
15     organization 
16         'ONF (Open Networking Foundation) Open Transport Working Group - Wireless Transport Project';
17
18     contact 
19         'WG Web:   <https://www.opennetworking.org/technical-communities/areas/specification/1931-optical-transport>
20          WG List:  <mailto:wireless-transport@login.opennetworking.org >
21          WG Chair: Lyndon Ong
22                    <mailto:lyong@ciena.com>
23          WG Chair: Giorgio Cazzaniga
24                    <mailto:giorgio.cazzaniga@sm-optics.com>';
25
26     description 
27         'This module contains a collection of YANG definitions for 
28          managing microwave transport networks.';
29
30     revision 2016-09-02 {
31         description 
32             "Initial revision."; 
33         reference 
34             "ONF TR xyz: A YANG Data Model for Microwave Transport Networks."; 
35     }
36
37     list MW_EthernetContainer_Pac {
38         description "LTP(Client)";
39         key 'layerProtocol';
40         config true;
41         leaf layerProtocol {
42             type leafref {
43                 path '/CoreModel-CoreNetworkModule-ObjectClasses:NetworkElement/CoreModel-CoreNetworkModule-ObjectClasses:_ltpRefList/CoreModel-CoreNetworkModule-ObjectClasses:_lpList/CoreModel-CoreNetworkModule-ObjectClasses:uuid';
44             }
45             description "";
46         }
47         container ethernetContainerCapability {
48             config false;
49             uses EthernetContainerCapability;
50         }
51         container ethernetContainerConfiguration {
52             config true;
53             uses EthernetContainerConfiguration;
54         }
55         container ethernetContainerStatus {
56             config false;
57             uses EthernetContainerStatus;
58         }
59         container ethernetContainerCurrentProblems {
60             config false;
61             uses EthernetContainerCurrentProblems;
62         }
63         container ethernetContainerCurrentPerformance {
64             config false;
65             uses EthernetContainerCurrentPerformance;
66         }
67         container ethernetContainerHistoricalPerformances {
68             config false;
69             uses EthernetContainerHistoricalPerformances;
70         }
71     }
72     grouping EthernetContainerCapability {
73         leaf bundlingIsAvail {
74             type boolean;
75             config false;
76             description "This attribute has to be set on 'true', if the device allows combining resources from several air interfaces for transporting this Ethernet container.";
77             default false;
78         }
79         leaf packetCompressionIsAvail {
80             type boolean;
81             config false;
82             description "In case packet compression can be activated, but not configured to a certain type, packetCompressionAvail shall be set on 'true', but none of the compression level specific booleans.";
83             default false;
84         }
85         leaf layer2CompressionIsAvail {
86             type boolean;
87             config false;
88             description "Packet compression on layer 2 available at the device.";
89             default false;
90         }
91         leaf vlanCompressionIsAvail {
92             type boolean;
93             config false;
94             description "Packet compression on VLAN layer available at the device.";
95             default false;
96         }
97         leaf qInQCompressionIsAvail {
98             type boolean;
99             config false;
100             description "Packet compression on layer of a second VLAN available at the device.";
101             default false;
102         }
103         leaf mplsCompressionIsAvail {
104             type boolean;
105             config false;
106             description "Packet compression on mpls layer available at the device.";
107             default false;
108         }
109         leaf ipv4CompressionIsAvail {
110             type boolean;
111             config false;
112             description "Packet compression on layer 3 for IPv4 available at the device.";
113             default false;
114         }
115         leaf ipv6CompressionIsAvail {
116             type boolean;
117             config false;
118             description "Packet compression on layer 3 for IPv6 available at the device.";
119             default false;
120         }
121         leaf layer4CompressionIsAvail {
122             type boolean;
123             config false;
124             description "Packet compression on layer 4 (TCP and UDP header) available at the device.";
125             default false;
126         }
127         leaf encryptionIsAvail {
128             type boolean;
129             config false;
130             description "Shall be marked 'true', if Ethernet payload encryption is available.";
131             default false;
132         }
133         leaf supportedAlarms {
134             type string;
135             config false;
136             description "Available alarms to be listed. Mandatory:'framingIsFaulty' and 'containerIsDown'. Further alarms might be added by the device.";
137             default "Supported alarms not yet defined.";
138         }
139     }
140     grouping EthernetContainerConfiguration {
141         leaf containerID {
142             type string;
143             description "ContainterID in Netconf must be the same as EthernetPortID in OpenFlow so a connection can be made between the two items, which separately exist in the controller.";
144         }
145         list segmentsIDList {
146             description "Lists the segments used for transporting this Ethernet container. In case EthernetContainer::ContainerCapability::bundlingIsAvail==0, all TypeDefinitions::segmentIdType::structureId must be identical in the list.";
147             key 'structureIdRef segmentIdRef';
148             config true;
149             ordered-by system;
150             uses MicrowaveModel-TypeDefinitions:segmentIDType;
151             min-elements 1;
152         }
153         leaf packetCompressionIsOn {
154             type boolean;
155             description "In case packet compression is activated, but no type is activated, it is assumed that the device chooses the optimum.";
156             default false;
157         }
158         leaf layer2CompressionIsOn {
159             type boolean;
160             description "Packet compression on layer 2 configured at the device.";
161             default false;
162         }
163         leaf vlanCompressionIsOn {
164             type boolean;
165             description "Packet compression on VLAN layer configured at the device.";
166             default false;
167         }
168         leaf qInQCompressionIsOn {
169             type boolean;
170             description "Packet compression on layer of a second VLAN configured at the device.";
171             default false;
172         }
173         leaf mplsCompressionIsOn {
174             type boolean;
175             description "Packet compression on MPLS layer configured at the device.";
176             default false;
177         }
178         leaf ipv4CompressionIsOn {
179             type boolean;
180             description "Packet compression on layer 3 for IPv4 configured at the device.";
181             default false;
182         }
183         leaf ipv6CompressionIsOn {
184             type boolean;
185             description "Packet compression on layer 3 for IPv6 configured at the device.";
186             default false;
187         }
188         leaf layer4CompressionIsOn {
189             type boolean;
190             description "Packet compression on layer 4 (TCP and UDP header) configured at the device.";
191             default false;
192         }
193         leaf encryptionIsOn {
194             type boolean;
195             description "Activates encryption of the Ethernet payload.";
196             default false;
197         }
198         leaf cryptographicKey {
199             type string;
200             description "Key for transforming plaintext into cipher text data.";
201             default "Cryptographic key not yet defined.";
202         }
203         list problemKindSeverityList {
204             description "Severity of the problem to be configured.";
205             key 'problemKindName';
206             config true;
207             ordered-by system;
208             uses MicrowaveModel-TypeDefinitions:containerProblemSeverityType;
209             min-elements 2;
210         }
211     }
212     grouping EthernetContainerStatus {
213         leaf lastStatusChange {
214             type CoreModel-CoreFoundationModule-TypeDefinitions:DateAndTime;
215             config false;
216             description "Time the Container entered its current operational status. 
217                 _format:yyyyMMddhhmmss.s[Z|{+|-}HHMm]; yyyy='0000'..'9999' year; MM='01'..'12' month; dd='01'..'31' day; hh='00'..'23' hour; mm='00'..'59' minute; ss='00'..'59' second; s='.0'..'.9'tenth of second (set to '.0' if EMS or NE cannot support this granularity); Z='Z' indicates UTC (rather than local time); {+|-}='+' or '-' delta from UTC; HH='00'..'23' time zone difference in hours; Mm='00'..'59' time zone difference in minutes.";
218             default "20101120140000.0Z+1";
219         }
220     }
221     grouping EthernetContainerCurrentProblems {
222         list currentProblemList {
223             key 'sequenceNumber';
224             ordered-by system;
225             uses MicrowaveModel-TypeDefinitions:containerCurrentProblemType;
226         }
227     }
228     grouping EthernetContainerCurrentPerformance {
229         description "Aggregated performance information of the Ethernet container at a particular moment.";
230         list currentPerformanceDataList {
231             key 'scannerId';
232             ordered-by system;
233             uses MicrowaveModel-TypeDefinitions:containerCurrentPerformanceType;
234             max-elements 2;
235             min-elements 1;
236         }
237     }
238     grouping EthernetContainerHistoricalPerformances {
239         description "Aggregated performance information of the Ethernet container for a pre-defined measurement interval.";
240         list historicalPerformanceDataList {
241             key 'historyDataId';
242             ordered-by system;
243             uses MicrowaveModel-TypeDefinitions:containerHistoricalPerformanceType;
244         }
245     }
246 }