1 module ethernet-container-2-0 {
\r
3 namespace "urn:onf:yang:ethernet-container-2-0";
\r
4 prefix ethernet-container;
\r
6 import ietf-yang-types {
\r
9 import core-model-1-4 {
\r
14 "openBackhaul.com proposal to Open Networking Foundation (ONF)";
\r
16 "WG Web : https://github.com/openBackhaul/Overview
\r
17 WG List: Thorsten.Heinze@openBackhaul.com
\r
18 Editor : Thorsten Heinze
\r
19 Email : Thorsten.Heinze@openBackhaul.com";
\r
21 "Technology specific amendment to the LayerProtocol class of the ONF Core IM for a transport resource for Ethernet.
\r
23 Copyright 2019 openBackhaul.com
\r
25 Licensed under the Apache License, Version 2.0 (the 'License');
\r
26 you may not use this file except in compliance with the License.
\r
27 You may obtain a copy of the License at
\r
28 http://www.apache.org/licenses/LICENSE-2.0
\r
29 Unless required by applicable law or agreed to in writing, software
\r
30 distributed under the License is distributed on an 'AS IS' BASIS,
\r
31 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
\r
32 See the License for the specific language governing permissions and
\r
33 limitations under the License.";
\r
35 revision 2020-01-21 {
\r
37 "Model for the Transport SDN Pilot at Telefonica Germany
\r
38 Please view https://github.com/openBackhaul/ethernetContainer/issues for changes.";
\r
40 "https://github.com/openBackhaul/ethernetContainer/tree/tsp: Model definition
\r
41 https://github.com/openBackhaul/onfCoreIm/tree/tsp: ONF TR-512 Core IM incl. Profile and enhanced Equipment definition";
\r
43 revision 2019-11-23 {
\r
45 "Model for the Transport SDN Pilot at Telefonica Germany
\r
46 Please view https://github.com/openBackhaul/ethernetContainer/issues for changes.";
\r
48 "https://github.com/openBackhaul/ethernetContainer/tree/tsp: Model definition
\r
49 https://github.com/openBackhaul/onfCoreIm/tree/tsp: ONF TR-512 Core IM incl. Profile and enhanced Equipment definition";
\r
51 revision 2019-06-14 {
\r
53 "Model for the Transport SDN Pilot at Telefonica Germany
\r
54 Please view https://github.com/openBackhaul/ethernetContainer/issues for changes.";
\r
56 "https://github.com/openBackhaul/ethernetContainer/tree/tsp: Model definition
\r
57 https://github.com/openBackhaul/onfCoreIm/tree/tsp: ONF TR-512 Core IM incl. Profile and enhanced Equipment definition";
\r
60 identity LAYER_PROTOCOL_NAME_TYPE_ETHERNET_CONTAINER_LAYER {
\r
61 base core-model:LAYER_PROTOCOL_NAME_TYPE;
\r
66 augment "/core-model:control-construct/core-model:logical-termination-point/core-model:layer-protocol" {
\r
67 when "derived-from-or-self(./core-model:layer-protocol-name, 'ethernet-container:LAYER_PROTOCOL_NAME_TYPE_ETHERNET_CONTAINER_LAYER')";
\r
68 uses ethernet-container-lp-spec;
\r
73 /****************************************
\r
74 * package notifications
\r
75 **************************************/
\r
77 notification object-creation-notification {
\r
78 uses object-creation-notification;
\r
83 grouping object-creation-notification {
\r
89 "Counts object creation notifications.";
\r
92 type yang:date-and-time;
\r
93 default "2010-11-20T14:00:00+01:00";
\r
98 leaf object-id-ref {
\r
100 path "/core-model:control-construct/core-model:logical-termination-point/core-model:uuid";
\r
101 require-instance false;
\r
109 default "Type of created object not specified.";
\r
118 notification object-deletion-notification {
\r
119 uses object-deletion-notification;
\r
124 grouping object-deletion-notification {
\r
130 "Counts object deletion notifications.";
\r
133 type yang:date-and-time;
\r
134 default "2010-11-20T14:00:00+01:00";
\r
139 leaf object-id-ref {
\r
141 path "/core-model:control-construct/core-model:logical-termination-point/core-model:uuid";
\r
142 require-instance false;
\r
152 notification attribute-value-changed-notification {
\r
153 uses attribute-value-changed-notification;
\r
158 grouping attribute-value-changed-notification {
\r
164 "Counts attribute value changed notifications.";
\r
167 type yang:date-and-time;
\r
168 default "2010-11-20T14:00:00+01:00";
\r
173 leaf object-id-ref {
\r
175 path "/core-model:control-construct/core-model:logical-termination-point/core-model:uuid";
\r
176 require-instance false;
\r
182 leaf attribute-name {
\r
184 default "Attribute name not specified.";
\r
187 "Name of the attribute that has been changed.";
\r
191 default "New value not specified.";
\r
194 "Attribute value converted to a string (xml, json, ...)";
\r
200 notification problem-notification {
\r
201 uses problem-notification;
\r
206 grouping problem-notification {
\r
212 "Counts problem notifications";
\r
215 type yang:date-and-time;
\r
216 default "2010-11-20T14:00:00+01:00";
\r
221 leaf object-id-ref {
\r
223 path "/core-model:control-construct/core-model:logical-termination-point/core-model:uuid";
\r
224 require-instance false;
\r
232 default "Problem name not specified.";
\r
235 "Name of the problem according to supportedAlarmList";
\r
238 type severity-type;
\r
239 default "SEVERITY_TYPE_WARNING";
\r
242 "Severity of the problem according to problemKindSeverity";
\r
248 /****************************************
\r
249 * grouping statements for object classes
\r
250 **************************************/
\r
251 /****************************************
\r
252 * package super-classes
\r
253 **************************************/
\r
255 grouping current-problem {
\r
256 leaf sequence-number {
\r
260 "Unique sequence number of the current problem object.";
\r
263 type yang:date-and-time;
\r
264 default "2010-11-20T14:00:00+01:00";
\r
267 "Time when the alarm was raised.";
\r
269 leaf problem-severity {
\r
270 type severity-type;
\r
271 default "SEVERITY_TYPE_NOT_YET_DEFINED";
\r
274 "Severity of the alarm.";
\r
280 grouping current-performance {
\r
282 type yang:date-and-time;
\r
283 default "2010-11-20T14:00:00+01:00";
\r
286 "The timestamp associated with when the current data was collected.";
\r
288 leaf suspect-interval-flag {
\r
293 "This attribute is used to indicate that the performance data for the current period may not be reliable. Some reasons for this to occur are:
\r
294 – Suspect data were detected by the actual resource doing data collection.
\r
295 – Transition of the administrativeState attribute to/from the 'lock' state.
\r
296 – Transition of the operationalState to/from the 'disabled' state.
\r
297 – Scheduler setting that inhibits the collection function.
\r
298 – The performance counters were reset during the interval.
\r
299 – The currentData (or subclass) object instance was created during the monitoring period.";
\r
301 leaf elapsed-time {
\r
307 "Number of seconds that elapsed since the last reset of the counter.";
\r
311 default "Scanner ID not defined.";
\r
316 leaf granularity-period {
\r
317 type granularity-period-type;
\r
320 "Time period between reset of the underlying counter.";
\r
326 grouping historical-performance {
\r
327 leaf suspect-interval-flag {
\r
332 "This attribute indicates that the data collected during the interval is suspect.";
\r
334 leaf history-data-id {
\r
336 default "History Data ID not defined.";
\r
341 leaf granularity-period {
\r
342 type granularity-period-type;
\r
345 "Time period between reset of the underlying counter.";
\r
347 leaf period-end-time {
\r
348 type yang:date-and-time;
\r
351 "Time when the counter values have been recorded and the counter reset.";
\r
357 grouping ethernet-container-lp-spec {
\r
358 container ethernet-container-pac {
\r
359 uses ethernet-container-pac;
\r
367 grouping ethernet-container-pac {
\r
368 container ethernet-container-capability {
\r
370 uses ethernet-container-capability;
\r
374 container ethernet-container-configuration {
\r
375 uses ethernet-container-configuration;
\r
379 container ethernet-container-status {
\r
381 uses ethernet-container-status;
\r
385 container ethernet-container-current-problems {
\r
387 uses ethernet-container-current-problems;
\r
391 container ethernet-container-current-performance {
\r
393 uses ethernet-container-current-performance;
\r
397 container ethernet-container-historical-performances {
\r
399 uses ethernet-container-historical-performances;
\r
407 grouping ethernet-container-capability {
\r
408 list available-queue-list {
\r
413 uses available-queue-type;
\r
415 "List of queues, which are available at the physical interface.";
\r
417 leaf explicit-congestion-notification-is-avail {
\r
422 "1 = Explicit Congestion Notification is available at this queue.";
\r
424 leaf ingress-policing-is-avail {
\r
429 "1 = This interface supports policing.";
\r
431 leaf egress-shaping-is-avail {
\r
436 "1 = This interface supports shaping.";
\r
438 leaf information-rate-min {
\r
444 "Only relevant if (egressShapingIsAvail==1): Minimum configurable throuput in kbit/s.";
\r
446 leaf information-rate-max {
\r
452 "Only relevant if (egressShapingIsAvail==1): Maximum configurable throuput in kbit/s.";
\r
454 leaf burst-size-min {
\r
460 "Only relevant if (egressShapingIsAvail==1): Minimum configurable value for the number of kBytes, which could be sent in a single burst.";
\r
462 leaf burst-size-max {
\r
468 "Only relevant if (egressShapingIsAvail==1): Maximum configurable value for the number of kBytes, which could be sent in a single burst.";
\r
470 leaf bundling-is-avail {
\r
475 "This attribute has to be set on 'true', if the device allows combining resources from several air interfaces for transporting this Ethernet container.";
\r
477 leaf bundling-group-size-max {
\r
482 "802.3 according to 30.11.1.1.6 aLocalPAFCapacity and ITU-T Rec. G.998.3 Appendix II aGroupCapacity. No Mbit/s value, but number of Ethernet Segments that can be aggregated for transporting this Ethernet Container. Reasonable values are between1 and 32.";
\r
484 leaf support-of-management-frames-without-preamble-is-avail {
\r
489 "802.3. 1 = Management frames with suppressed preamble are also accepted.";
\r
491 list supported-header-compression-kind-list {
\r
492 key "header-compression-name";
\r
495 uses header-compression-kind;
\r
497 "Lists the kinds of header compression, which are supported by the device.";
\r
499 leaf fec-is-avail {
\r
504 "802.3 according to 30.5.1.1.15 aFECAbility, 45.2.1.92.1 BASE-R FEC ability and 45.2.3.37 10GBASE-PR and 10/1GBASE-PRX FEC ability register and ITU-T Rec. G.998.3 Appendix II aFECSupported. 1 = Indicates that an optional Forward Error Correction (FEC) is supported.";
\r
506 leaf fec-word-size-max {
\r
512 "ITU-T Rec. G.998.3 Appendix II aFECWordSize. Indicates maximum supported Forward Error Correction (FEC) code word size in Bytes. Expected values between 20 and 255.";
\r
514 leaf-list supported-fec-redundancy-size-list {
\r
515 type fec-redundancy-size-type;
\r
519 "ITU-T Rec. G.998.3 Appendix II aFECRedundancySize. Indicates maximum supported Forward Error Correction (FEC) redundancy word size.";
\r
521 leaf-list supported-fec-interleaver-kind-list {
\r
522 type fec-interleaver-kind-type;
\r
526 "ITU-T Rec. G.998.3 Appendix II aFECInterleaverType. Supported kinds of Forward Error Correction (FEC) interleaver";
\r
528 leaf-list supported-fec-interleaver-depth-list {
\r
529 type fec-interleaver-depth-type;
\r
533 "ITU-T Rec. G.998.3 Appendix II aFECInterleaverDepth. Indicates the supported depths of the Forward Error Correction (FEC) interleaver.";
\r
535 leaf encryption-is-avail {
\r
540 "Shall be marked 'true', if Ethernet payload encryption is available.";
\r
542 leaf admin-shut-down-is-avail {
\r
547 "1 = Manual switching on and off of the interface without deleting it (underlying OSI network layers are also not affected) is available.";
\r
549 leaf-list supported-loop-back-kind-list {
\r
550 type loop-back-type;
\r
555 "List of supported kinds of looping back.";
\r
557 leaf maintenance-timer-range {
\r
559 default "Range of the maintenance timer not yet defined.";
\r
562 "Available time periods for maintenance configurations to be described. Concrete values shall be separated by commas (e.g. '10, 60, 360'). Ranges shall be expressed as two values separated by a minus (e.g. '10-360').";
\r
564 leaf statistics-is-avail {
\r
569 "1 = Continuous statistics counters are available.";
\r
571 leaf-list supported-alarm-list {
\r
576 "Available alarms to be listed. Mandatory:'framingIsFaulty' and 'containerIsDown'. Further alarms might be added by the vendor.";
\r
578 leaf performance-monitoring-is-avail {
\r
583 "1 = Collection and aggregation of performance values is available.";
\r
589 grouping ethernet-container-configuration {
\r
590 leaf interface-name {
\r
592 default "Interface name not yet defined.";
\r
594 "Description of the interface, could be a name, could be a number. Free text field to be filled by the operator.";
\r
596 leaf interface-is-on {
\r
600 "Only relevant if (adminShutDownIsAvail==1). 1 = Activation of the interface. 0 = De-activation of the interface without deleting it (underlying OSI network layers are not affected).";
\r
602 list queue-behavior-list {
\r
606 uses queue-behavior-type;
\r
608 "Defines scheduling and dropping behavior of all queues.";
\r
610 leaf explicit-congestion-notification-is-on {
\r
614 "1 = Explicit Congestion Notification is activitated at this queue.";
\r
616 leaf ingress-policing-profile {
\r
618 path "/core-model:control-construct/core-model:profile-collection/core-model:profile/core-model:uuid";
\r
619 require-instance false;
\r
622 "Reference to the policing profile, which is active on this interface. Attribute to point to an instance of Profile with profileName=='PROFILE_NAME_TYPE_POLICING_PROFILE'.";
\r
624 leaf egress-shaping-is-on {
\r
628 "1 = Shaping on the egress is activated.";
\r
630 leaf maximum-information-rate {
\r
635 "Only relevant if (egressShapingIsAvail==1): Limits the throughput on the egress.";
\r
637 leaf maximum-burst-size {
\r
642 "Only relevant if (egressShapingIsAvail==1): Limits the number of kBytes, which are sent in a single burst.";
\r
644 leaf bundling-is-on {
\r
648 "802.3 according to 30.11.1.1.5 aPAFAdminState and 45.2.3.26.3 PAF enable. 1 = Algorithm for bundling Ethernet segments is activated (, even if only a single Structure would be associated).";
\r
650 leaf header-compression-kind {
\r
652 path "/core-model:control-construct/core-model:logical-termination-point/core-model:layer-protocol/ethernet-container:ethernet-container-pac/ethernet-container:ethernet-container-capability/ethernet-container:supported-header-compression-kind-list/ethernet-container:header-compression-name";
\r
653 require-instance false;
\r
655 must 'boolean(/core-model:control-construct/core-model:logical-termination-point/core-model:layer-protocol/ethernet-container:ethernet-container-pac/ethernet-container:ethernet-container-capability/ethernet-container:supported-header-compression-kind-list[header-compression-name=current()])';
\r
657 "Defines the kind of header compression to be used.";
\r
663 "802.3 according to 30.5.1.1.16 aFECmode, 45.2.1.93.1 FEC enable and 45.2.3.38.2 10 Gb/s FEC Enable and ITU-T Rec. G.998.3 Appendix II aFECAdminState. Only relevant if (fecIsAvail==1). 1 = Activation of the Forward Error Correction (FEC).";
\r
665 leaf fec-word-size {
\r
670 "ITU-T Rec. G.998.3 Appendix II aFECWordSize. Only relevant if (fecIsSupported==1). Defining the Forward Error Correction (FEC) code word size in Bytes. Expected values between 20 and 255.";
\r
672 leaf fec-redundancy-size {
\r
673 type fec-redundancy-size-type;
\r
674 default "FEC_REDUNDANCY_SIZE_TYPE_NOT_YET_DEFINED";
\r
676 "ITU-T Rec. G.998.3 Appendix II aFECRedundancySize. Only relevant if (fecIsSupported==1). Defining the Forward Error Correction (FEC) redundancy word size.";
\r
678 leaf fec-interleaver-kind {
\r
679 type fec-interleaver-kind-type;
\r
680 default "FEC_INTERLEAVER_KIND_TYPE_NOT_YET_DEFINED";
\r
682 "ITU-T Rec. G.998.3 Appendix II aFECInterleaverType. Only relevant if (fecIsSupported==1). Defining the kind of Forward Error Correction (FEC) interleaver.";
\r
684 leaf fec-interleaver-depth {
\r
685 type fec-interleaver-depth-type;
\r
686 default "FEC_INTERLEAVER_DEPTH_TYPE_NOT_YET_DEFINED";
\r
688 "ITU-T Rec. G.998.3 Appendix II aFECInterleaverDepth. Only relevant if (fecIsSupported==1). Defining the depth of Forward Error Correction (FEC) interleaver.";
\r
690 leaf encryption-is-on {
\r
694 "Activates encryption of the Ethernet payload.";
\r
696 leaf cryptographic-key {
\r
698 default "Cryptographic key not yet defined.";
\r
700 "Key for transforming plaintext into cipher text data.";
\r
702 leaf loop-back-kind-on {
\r
703 type loop-back-type;
\r
704 default "LOOP_BACK_TYPE_NOT_YET_DEFINED";
\r
706 "Maintenance Feature. Configuration of a loop back of TDM time slots on this interface.";
\r
708 leaf maintenance-timer {
\r
713 "Time of existence of any maintenance configuration. 0 = maintenance timer is switched off. Valid values are defined in *Capability::maintenanceTimerRange.";
\r
715 leaf statistics-is-on {
\r
719 "Only relevant if (statisticsIsAvail==1). 1 = Continuous statistics counters are switched on.";
\r
721 list problem-kind-severity-list {
\r
722 key "problem-kind-name";
\r
724 uses problem-kind-severity-type;
\r
726 "Severity of the problem to be configured.";
\r
728 leaf performance-monitoring-is-on {
\r
732 "Only relevant if (performanceMonitoringIsAvail==1). 1 = Collection and aggregation of performance values is switched on.";
\r
735 "Serving Structures are identified by LogicalTerminationPoint::_serverLtpRefList. If (bundlingIsAvail==1), multiplicity might be *. If (bundlingIsAvail==0), multiplicity must be 0..1. It is assumed that there is just one Ethernet segment per Structure.";
\r
738 grouping ethernet-container-status {
\r
739 leaf interface-status {
\r
740 type interface-status-type;
\r
741 default "INTERFACE_STATUS_TYPE_NOT_YET_DEFINED";
\r
744 "Operational status of the interface.";
\r
746 leaf bundling-is-up {
\r
751 "802.3 and ITU-T Rec. G.998.3 Appendix II aGroupStatus. 1 = Algorithm for bundling Ethernet segments is operative (, even if only a single Structure would be associated).";
\r
753 leaf remote-site-is-faulty {
\r
758 "802.3. 1 = remote fault condition detected.";
\r
760 leaf loop-back-kind-up {
\r
761 type loop-back-type;
\r
762 default "LOOP_BACK_TYPE_NOT_YET_DEFINED";
\r
765 "The currently active (not just configured) type of loop back.";
\r
767 leaf statistics-is-up {
\r
772 "1 = Statistics are currently counted";
\r
774 leaf performance-monitoring-is-up {
\r
779 "1 = Performance values are currently collected and aggregated.";
\r
782 type yang:date-and-time;
\r
783 default "2010-11-20T14:00:00+01:00";
\r
786 "The timestamp associated with when the statistic values were read/retrieved.";
\r
788 leaf last-10-sec-data-input-rate {
\r
794 "Data receive rate over the last 10 second interval in kbit/s.";
\r
796 leaf last-10-sec-data-output-rate {
\r
802 "Data transmit rate over the last 10 second interval in kbit/s.";
\r
804 leaf total-bytes-input {
\r
810 "Received data volume in Byte.";
\r
812 leaf total-bytes-output {
\r
818 "Sent data volume in Byte.";
\r
820 leaf forwarded-bytes-input {
\r
826 "Number of received Bytes, for which the device was not their final destination and for which the device attempted to find a route to forward them to that final destination.";
\r
828 leaf forwarded-bytes-output {
\r
834 "Number of Bytes, for which the device was not their final destination and for which it was successful in finding a path to their final destination.";
\r
840 grouping ethernet-container-current-problems {
\r
841 list current-problem-list {
\r
842 key "sequence-number";
\r
844 uses container-current-problem-type;
\r
848 leaf number-of-current-problems {
\r
853 "Number of alarms, which are currently active on this interface.";
\r
855 leaf time-of-latest-change {
\r
856 type yang:date-and-time;
\r
857 default "2010-11-20T14:00:00+01:00";
\r
860 "Date and time when the list of alarms has been changed for the last time.";
\r
866 grouping ethernet-container-current-performance {
\r
867 list current-performance-data-list {
\r
868 key "granularity-period";
\r
872 uses container-current-performance-type;
\r
876 leaf number-of-current-performance-sets {
\r
881 "Number of sets of current performance values, which are provided in the list.";
\r
884 "Aggregated performance information of the Ethernet container at a particular moment.";
\r
887 grouping ethernet-container-historical-performances {
\r
888 list historical-performance-data-list {
\r
889 key "granularity-period period-end-time";
\r
891 uses container-historical-performance-type;
\r
895 leaf number-of-historical-performance-sets {
\r
900 "Number of sets of historical performance values, which are provided in the list.";
\r
902 leaf time-of-latest-change {
\r
903 type yang:date-and-time;
\r
904 default "2010-11-20T14:00:00+01:00";
\r
907 "Date and time when the list of sets of historical performance values has been changed for the last time (e.g. new one added or existing one deleted).";
\r
910 "Aggregated performance information of the Ethernet container for a pre-defined measurement interval.";
\r
913 grouping header-compression-kind {
\r
914 leaf header-compression-name {
\r
920 leaf header-compression-mode {
\r
921 type header-compression-mode-type;
\r
922 default "HEADER_COMPRESSION_MODE_TYPE_NOT_YET_DEFINED";
\r
925 "Defines the way of configuring the header compression.";
\r
927 leaf-list compressed-protocol-layer-list {
\r
928 type protocol-layer-type;
\r
932 "Only relevant if (headerCompressionMode==PROTOCOL_BASED). List of protocol layers that get compressed with this kind of header compression.";
\r
934 leaf-list mpls-payload-kind-list {
\r
935 type mpls-payload-kind-type;
\r
939 "Defines how the header bytes inside the MPLS header has to be interpreted.";
\r
941 leaf compressed-header-length {
\r
947 "Only relevant if (headerCompressionMode==LENGTH_BASED). Number of Bytes of header information that get compressed.";
\r
953 /****************************************
\r
954 * typedef statements
\r
955 **************************************/
\r
957 typedef loop-back-type {
\r
959 base LOOP_BACK_TYPE;
\r
965 typedef header-compression-mode-type {
\r
967 base HEADER_COMPRESSION_MODE_TYPE;
\r
973 typedef protocol-layer-type {
\r
975 base PROTOCOL_LAYER_TYPE;
\r
981 typedef mpls-payload-kind-type {
\r
983 base MPLS_PAYLOAD_KIND_TYPE;
\r
989 typedef queue-name-type {
\r
991 base QUEUE_NAME_TYPE;
\r
997 typedef drop-precedence-type {
\r
999 base DROP_PRECEDENCE_TYPE;
\r
1005 typedef dropping-behavior-kind-type {
\r
1006 type identityref {
\r
1007 base DROPPING_BEHAVIOR_KIND_TYPE;
\r
1013 typedef scheduler-kind-type {
\r
1014 type identityref {
\r
1015 base SCHEDULER_KIND_TYPE;
\r
1021 typedef fec-redundancy-size-type {
\r
1022 type identityref {
\r
1023 base FEC_REDUNDANCY_SIZE_TYPE;
\r
1029 typedef fec-interleaver-kind-type {
\r
1030 type identityref {
\r
1031 base FEC_INTERLEAVER_KIND_TYPE;
\r
1037 typedef fec-interleaver-depth-type {
\r
1038 type identityref {
\r
1039 base FEC_INTERLEAVER_DEPTH_TYPE;
\r
1042 "ITU-T Rec. G.998.3 Appendix II aFECInterleaverDepth";
\r
1045 /*********************************************
\r
1046 * grouping statements for complex data types
\r
1047 *******************************************/
\r
1049 identity LOOP_BACK_TYPE {
\r
1054 identity LOOP_BACK_TYPE_NONE {
\r
1055 base LOOP_BACK_TYPE;
\r
1060 identity LOOP_BACK_TYPE_BACK_TO_LOCAL {
\r
1061 base LOOP_BACK_TYPE;
\r
1063 "Returning the Ethernet frames of the local site on the outgoing interface back to the local site.";
\r
1066 identity LOOP_BACK_TYPE_BACK_TO_REMOTE {
\r
1067 base LOOP_BACK_TYPE;
\r
1069 "Returning the incoming Ethernet frames back to the remote site.";
\r
1072 identity LOOP_BACK_TYPE_NOT_YET_DEFINED {
\r
1073 base LOOP_BACK_TYPE;
\r
1078 identity HEADER_COMPRESSION_MODE_TYPE {
\r
1083 identity HEADER_COMPRESSION_MODE_TYPE_AUTO {
\r
1084 base HEADER_COMPRESSION_MODE_TYPE;
\r
1086 "The header compression algorithm determines the optimum compression.";
\r
1089 identity HEADER_COMPRESSION_MODE_TYPE_PROTOCOL_BASED {
\r
1090 base HEADER_COMPRESSION_MODE_TYPE;
\r
1092 "Predefined protocol layers are to be compressed.";
\r
1095 identity HEADER_COMPRESSION_MODE_TYPE_LENGTH_BASED {
\r
1096 base HEADER_COMPRESSION_MODE_TYPE;
\r
1098 "Predefined amount of header bytes are to be compressed.";
\r
1101 identity HEADER_COMPRESSION_MODE_TYPE_NOT_YET_DEFINED {
\r
1102 base HEADER_COMPRESSION_MODE_TYPE;
\r
1107 identity PROTOCOL_LAYER_TYPE {
\r
1112 identity PROTOCOL_LAYER_TYPE_NONE {
\r
1113 base PROTOCOL_LAYER_TYPE;
\r
1118 identity PROTOCOL_LAYER_TYPE_ETHERNET_MAC {
\r
1119 base PROTOCOL_LAYER_TYPE;
\r
1124 identity PROTOCOL_LAYER_TYPE_VLAN {
\r
1125 base PROTOCOL_LAYER_TYPE;
\r
1130 identity PROTOCOL_LAYER_TYPE_Q_IN_Q {
\r
1131 base PROTOCOL_LAYER_TYPE;
\r
1136 identity PROTOCOL_LAYER_TYPE_MPLS {
\r
1137 base PROTOCOL_LAYER_TYPE;
\r
1142 identity PROTOCOL_LAYER_TYPE_IPV4 {
\r
1143 base PROTOCOL_LAYER_TYPE;
\r
1148 identity PROTOCOL_LAYER_TYPE_IPV6 {
\r
1149 base PROTOCOL_LAYER_TYPE;
\r
1154 identity PROTOCOL_LAYER_TYPE_TCP {
\r
1155 base PROTOCOL_LAYER_TYPE;
\r
1160 identity PROTOCOL_LAYER_TYPE_UDP {
\r
1161 base PROTOCOL_LAYER_TYPE;
\r
1166 identity PROTOCOL_LAYER_TYPE_RTP {
\r
1167 base PROTOCOL_LAYER_TYPE;
\r
1172 identity PROTOCOL_LAYER_TYPE_GTP_U {
\r
1173 base PROTOCOL_LAYER_TYPE;
\r
1178 identity PROTOCOL_LAYER_TYPE_OTHERS {
\r
1179 base PROTOCOL_LAYER_TYPE;
\r
1184 identity PROTOCOL_LAYER_TYPE_NOT_YET_DEFINED {
\r
1185 base PROTOCOL_LAYER_TYPE;
\r
1190 identity MPLS_PAYLOAD_KIND_TYPE {
\r
1195 identity MPLS_PAYLOAD_KIND_TYPE_NONE {
\r
1196 base MPLS_PAYLOAD_KIND_TYPE;
\r
1198 "Parameter not required.";
\r
1201 identity MPLS_PAYLOAD_KIND_TYPE_AUTO {
\r
1202 base MPLS_PAYLOAD_KIND_TYPE;
\r
1204 "If the Control Word (CW) will be present, it would be Ethernet Over MPLS. OtherwiseI, it would be Pv4/IPv6.";
\r
1207 identity MPLS_PAYLOAD_KIND_TYPE_ETH_O_MPLS {
\r
1208 base MPLS_PAYLOAD_KIND_TYPE;
\r
1210 "Always Ethernet over MPLS ";
\r
1213 identity MPLS_PAYLOAD_KIND_TYPE_IP_O_MPLS {
\r
1214 base MPLS_PAYLOAD_KIND_TYPE;
\r
1216 "Always IPv4/IPv6 over MPLS";
\r
1219 identity MPLS_PAYLOAD_KIND_TYPE_NOT_YET_DEFINED {
\r
1220 base MPLS_PAYLOAD_KIND_TYPE;
\r
1225 identity QUEUE_NAME_TYPE {
\r
1230 identity QUEUE_NAME_TYPE_BEST_EFFORT_QUEUE {
\r
1231 base QUEUE_NAME_TYPE;
\r
1236 identity QUEUE_NAME_TYPE_ASSURED_FORWARDING_QUEUE1 {
\r
1237 base QUEUE_NAME_TYPE;
\r
1242 identity QUEUE_NAME_TYPE_ASSURED_FORWARDING_QUEUE2 {
\r
1243 base QUEUE_NAME_TYPE;
\r
1248 identity QUEUE_NAME_TYPE_ASSURED_FORWARDING_QUEUE3 {
\r
1249 base QUEUE_NAME_TYPE;
\r
1254 identity QUEUE_NAME_TYPE_ASSURED_FORWARDING_QUEUE4 {
\r
1255 base QUEUE_NAME_TYPE;
\r
1260 identity QUEUE_NAME_TYPE_EXPEDITED_FORWARDING_QUEUE {
\r
1261 base QUEUE_NAME_TYPE;
\r
1266 identity QUEUE_NAME_TYPE_CLASS_SELECTOR_QUEUE6 {
\r
1267 base QUEUE_NAME_TYPE;
\r
1272 identity QUEUE_NAME_TYPE_CLASS_SELECTOR_QUEUE7 {
\r
1273 base QUEUE_NAME_TYPE;
\r
1278 identity QUEUE_NAME_TYPE_QUEUENAME_NOT_YET_DEFINED {
\r
1279 base QUEUE_NAME_TYPE;
\r
1284 identity DROP_PRECEDENCE_TYPE {
\r
1289 identity DROP_PRECEDENCE_TYPE_ALL {
\r
1290 base DROP_PRECEDENCE_TYPE;
\r
1292 "If all drop precedence are affected. This includes the case of drop precedences are not implemented.";
\r
1295 identity DROP_PRECEDENCE_TYPE_LOW {
\r
1296 base DROP_PRECEDENCE_TYPE;
\r
1298 "Would be equal to GREEN.";
\r
1301 identity DROP_PRECEDENCE_TYPE_MEDIUM {
\r
1302 base DROP_PRECEDENCE_TYPE;
\r
1304 "Would be equal to YELLOW.";
\r
1307 identity DROP_PRECEDENCE_TYPE_HIGH {
\r
1308 base DROP_PRECEDENCE_TYPE;
\r
1310 "Would be equal to RED.";
\r
1313 identity DROP_PRECEDENCE_TYPE_NOT_YET_DEFINED {
\r
1314 base DROP_PRECEDENCE_TYPE;
\r
1319 identity DROPPING_BEHAVIOR_KIND_TYPE {
\r
1324 identity DROPPING_BEHAVIOR_KIND_TYPE_DROP_TAIL {
\r
1325 base DROPPING_BEHAVIOR_KIND_TYPE;
\r
1327 "When the queue is filled to capacity, newly arriving packets are discarded until there is room in the queue to accept new traffic. Packets are not differentiated, i.e., all packets are treated identically.";
\r
1330 identity DROPPING_BEHAVIOR_KIND_TYPE_RED {
\r
1331 base DROPPING_BEHAVIOR_KIND_TYPE;
\r
1333 "Queue management based on Random Early Detection (RED). RED drops packets based on a drop probability that is based on the average queue length, and settings of mininum and maximum queue thresholds. On ECN-capable devices, packets may be marked instead of dropped to signal congestion to the sender.";
\r
1336 identity DROPPING_BEHAVIOR_KIND_TYPE_WRED {
\r
1337 base DROPPING_BEHAVIOR_KIND_TYPE;
\r
1339 "Queue management based on a variant of RED in which the packet drop probability is based on its traffic class.";
\r
1342 identity DROPPING_BEHAVIOR_KIND_TYPE_NOT_YET_DEFINED {
\r
1343 base DROPPING_BEHAVIOR_KIND_TYPE;
\r
1348 identity SCHEDULER_KIND_TYPE {
\r
1353 identity SCHEDULER_KIND_TYPE_STRICT {
\r
1354 base SCHEDULER_KIND_TYPE;
\r
1356 "Strict Priority";
\r
1359 identity SCHEDULER_KIND_TYPE_WFQ {
\r
1360 base SCHEDULER_KIND_TYPE;
\r
1362 "Weighted-Fair-Queuing";
\r
1365 identity SCHEDULER_KIND_TYPE_WRR {
\r
1366 base SCHEDULER_KIND_TYPE;
\r
1368 "Weighted Round Robin";
\r
1371 identity SCHEDULER_KIND_TYPE_DWRR {
\r
1372 base SCHEDULER_KIND_TYPE;
\r
1374 "Deficit Weighted Round Robin";
\r
1377 identity SCHEDULER_KIND_TYPE_NOT_YET_DEFINED {
\r
1378 base SCHEDULER_KIND_TYPE;
\r
1383 identity FEC_REDUNDANCY_SIZE_TYPE {
\r
1388 identity FEC_REDUNDANCY_SIZE_TYPE_2 {
\r
1389 base FEC_REDUNDANCY_SIZE_TYPE;
\r
1394 identity FEC_REDUNDANCY_SIZE_TYPE_4 {
\r
1395 base FEC_REDUNDANCY_SIZE_TYPE;
\r
1400 identity FEC_REDUNDANCY_SIZE_TYPE_8 {
\r
1401 base FEC_REDUNDANCY_SIZE_TYPE;
\r
1406 identity FEC_REDUNDANCY_SIZE_TYPE_16 {
\r
1407 base FEC_REDUNDANCY_SIZE_TYPE;
\r
1412 identity FEC_REDUNDANCY_SIZE_TYPE_20 {
\r
1413 base FEC_REDUNDANCY_SIZE_TYPE;
\r
1418 identity FEC_REDUNDANCY_SIZE_TYPE_NOT_YET_DEFINED {
\r
1419 base FEC_REDUNDANCY_SIZE_TYPE;
\r
1424 identity FEC_INTERLEAVER_KIND_TYPE {
\r
1429 identity FEC_INTERLEAVER_KIND_TYPE_NONE {
\r
1430 base FEC_INTERLEAVER_KIND_TYPE;
\r
1435 identity FEC_INTERLEAVER_KIND_TYPE_BLOCK {
\r
1436 base FEC_INTERLEAVER_KIND_TYPE;
\r
1441 identity FEC_INTERLEAVER_KIND_TYPE_CONVOLUTION {
\r
1442 base FEC_INTERLEAVER_KIND_TYPE;
\r
1447 identity FEC_INTERLEAVER_KIND_TYPE_NOT_YET_DEFINED {
\r
1448 base FEC_INTERLEAVER_KIND_TYPE;
\r
1453 identity FEC_INTERLEAVER_DEPTH_TYPE {
\r
1458 identity FEC_INTERLEAVER_DEPTH_TYPE_1 {
\r
1459 base FEC_INTERLEAVER_DEPTH_TYPE;
\r
1464 identity FEC_INTERLEAVER_DEPTH_TYPE_2 {
\r
1465 base FEC_INTERLEAVER_DEPTH_TYPE;
\r
1470 identity FEC_INTERLEAVER_DEPTH_TYPE_3 {
\r
1471 base FEC_INTERLEAVER_DEPTH_TYPE;
\r
1476 identity FEC_INTERLEAVER_DEPTH_TYPE_4 {
\r
1477 base FEC_INTERLEAVER_DEPTH_TYPE;
\r
1482 identity FEC_INTERLEAVER_DEPTH_TYPE_6 {
\r
1483 base FEC_INTERLEAVER_DEPTH_TYPE;
\r
1488 identity FEC_INTERLEAVER_DEPTH_TYPE_8 {
\r
1489 base FEC_INTERLEAVER_DEPTH_TYPE;
\r
1494 identity FEC_INTERLEAVER_DEPTH_TYPE_12 {
\r
1495 base FEC_INTERLEAVER_DEPTH_TYPE;
\r
1500 identity FEC_INTERLEAVER_DEPTH_TYPE_16 {
\r
1501 base FEC_INTERLEAVER_DEPTH_TYPE;
\r
1506 identity FEC_INTERLEAVER_DEPTH_TYPE_24 {
\r
1507 base FEC_INTERLEAVER_DEPTH_TYPE;
\r
1512 identity FEC_INTERLEAVER_DEPTH_TYPE_32 {
\r
1513 base FEC_INTERLEAVER_DEPTH_TYPE;
\r
1518 identity FEC_INTERLEAVER_DEPTH_TYPE_48 {
\r
1519 base FEC_INTERLEAVER_DEPTH_TYPE;
\r
1524 identity FEC_INTERLEAVER_DEPTH_TYPE_96 {
\r
1525 base FEC_INTERLEAVER_DEPTH_TYPE;
\r
1530 identity FEC_INTERLEAVER_DEPTH_TYPE_NOT_YET_DEFINED {
\r
1531 base FEC_INTERLEAVER_DEPTH_TYPE;
\r
1536 identity GRANULARITY_PERIOD_TYPE {
\r
1541 identity GRANULARITY_PERIOD_TYPE_UNKNOWN {
\r
1542 base GRANULARITY_PERIOD_TYPE;
\r
1547 identity GRANULARITY_PERIOD_TYPE_PERIOD-15-MIN {
\r
1548 base GRANULARITY_PERIOD_TYPE;
\r
1553 identity GRANULARITY_PERIOD_TYPE_PERIOD-24-HOURS {
\r
1554 base GRANULARITY_PERIOD_TYPE;
\r
1559 identity GRANULARITY_PERIOD_TYPE_NOT_YET_DEFINED {
\r
1560 base GRANULARITY_PERIOD_TYPE;
\r
1565 identity SEVERITY_TYPE {
\r
1570 identity SEVERITY_TYPE_NON_ALARMED {
\r
1571 base SEVERITY_TYPE;
\r
1576 identity SEVERITY_TYPE_WARNING {
\r
1577 base SEVERITY_TYPE;
\r
1582 identity SEVERITY_TYPE_MINOR {
\r
1583 base SEVERITY_TYPE;
\r
1588 identity SEVERITY_TYPE_MAJOR {
\r
1589 base SEVERITY_TYPE;
\r
1594 identity SEVERITY_TYPE_CRITICAL {
\r
1595 base SEVERITY_TYPE;
\r
1600 identity SEVERITY_TYPE_NOT_YET_DEFINED {
\r
1601 base SEVERITY_TYPE;
\r
1606 identity INTERFACE_STATUS_TYPE {
\r
1611 identity INTERFACE_STATUS_TYPE_UP {
\r
1612 base INTERFACE_STATUS_TYPE;
\r
1614 "Ready to pass packets.";
\r
1617 identity INTERFACE_STATUS_TYPE_DOWN {
\r
1618 base INTERFACE_STATUS_TYPE;
\r
1620 "The interface does not pass any packets.";
\r
1623 identity INTERFACE_STATUS_TYPE_TESTING {
\r
1624 base INTERFACE_STATUS_TYPE;
\r
1626 "In some test mode. No operational packets can be passed.";
\r
1629 identity INTERFACE_STATUS_TYPE_UNKNOWN {
\r
1630 base INTERFACE_STATUS_TYPE;
\r
1632 "Status cannot be determined for some reason.";
\r
1635 identity INTERFACE_STATUS_TYPE_DORMANT {
\r
1636 base INTERFACE_STATUS_TYPE;
\r
1638 "Waiting for some external event.";
\r
1641 identity INTERFACE_STATUS_TYPE_NOT_PRESENT {
\r
1642 base INTERFACE_STATUS_TYPE;
\r
1644 "Some component (typically hardware) is missing.";
\r
1647 identity INTERFACE_STATUS_TYPE_LOWER_LAYER_DOWN {
\r
1648 base INTERFACE_STATUS_TYPE;
\r
1650 "Down due to state of lower-layer interface(s).";
\r
1653 identity INTERFACE_STATUS_TYPE_ADMIN_DOWN {
\r
1654 base INTERFACE_STATUS_TYPE;
\r
1656 "Down due to configuration.";
\r
1659 identity INTERFACE_STATUS_TYPE_NOT_YET_DEFINED {
\r
1660 base INTERFACE_STATUS_TYPE;
\r
1665 /****************************************
\r
1666 * package super-types
\r
1667 **************************************/
\r
1669 typedef granularity-period-type {
\r
1670 type identityref {
\r
1671 base GRANULARITY_PERIOD_TYPE;
\r
1674 "The enumeration with the options for granularity period of the performance data.";
\r
1677 typedef severity-type {
\r
1678 type identityref {
\r
1679 base SEVERITY_TYPE;
\r
1682 "According to ITU-T M.3160";
\r
1685 typedef interface-status-type {
\r
1686 type identityref {
\r
1687 base INTERFACE_STATUS_TYPE;
\r
1690 "Current Interface Status";
\r
1693 grouping problem-kind-severity-type {
\r
1694 leaf problem-kind-name {
\r
1697 "Name of the alarm according to supportedAlarmList";
\r
1699 leaf problem-kind-severity {
\r
1700 type severity-type;
\r
1701 default "SEVERITY_TYPE_NOT_YET_DEFINED";
\r
1703 "Severity of this type of alarm.";
\r
1709 grouping available-queue-type {
\r
1711 type queue-name-type;
\r
1714 "Name of the queue.";
\r
1716 leaf max-queue-depth {
\r
1722 "Maximum configurable depth of the queue in Byte. openconfig-qos-interfaces.yang";
\r
1724 leaf queue-depth-configuration-is-avail {
\r
1729 "1 = Size of the individual queue is configurable (setting thresholdHigh of a WRED profile might be an alternative way of configuring the effective queue depth).";
\r
1731 leaf-list available-dropping-behavior-kind-list {
\r
1732 type dropping-behavior-kind-type;
\r
1737 "Lists the available types of behavior in case of congestions.";
\r
1739 leaf-list available-drop-precedence-kind-list {
\r
1740 type drop-precedence-type;
\r
1745 "Explicit list (ALL not to be used here) of drop precedences, which are available for this queue.";
\r
1747 leaf wred-profile-per-drop-precedence-is-available {
\r
1752 "1 = Separate WRED profiles can be defined for every drop precedence.";
\r
1754 leaf-list available-scheduling-kind-list {
\r
1755 type scheduler-kind-type;
\r
1760 "Lists the available types of scheduling.";
\r
1766 grouping wred-behavior-type {
\r
1767 leaf affected-drop-precedence {
\r
1768 type drop-precedence-type;
\r
1770 "Definition of the drop precedence, for which the WRED profile shall apply on.";
\r
1772 leaf affected-protocol {
\r
1773 type protocol-layer-type;
\r
1775 "Definition of the kind of protocol, for which the WRED profile shall apply on.";
\r
1777 leaf wred-profile {
\r
1779 path "/core-model:control-construct/core-model:profile-collection/core-model:profile/core-model:uuid";
\r
1780 require-instance false;
\r
1783 "Associates a WRED profile to the queue, respectively drop precedence. Attribute to point to an instance of Profile with profileName=='PROFILE_NAME_TYPE_WRED_PROFILE'.";
\r
1789 grouping queue-behavior-type {
\r
1791 type queue-name-type;
\r
1793 "Name of the queue.";
\r
1795 leaf queue-depth {
\r
1800 "Only relevant if (queueDepthConfigurationIsAvail==1). Size of the queue in Byte.";
\r
1802 leaf dropping-behavior-kind {
\r
1803 type dropping-behavior-kind-type;
\r
1804 default "DROPPING_BEHAVIOR_KIND_TYPE_NOT_YET_DEFINED";
\r
1806 "Defines the behavior in case of congestions.";
\r
1808 list wred-behavior-list {
\r
1809 key "affected-drop-precedence affected-protocol";
\r
1810 uses wred-behavior-type;
\r
1812 "Only relevant if (droppingBehaviorKind==WRED).";
\r
1814 leaf scheduler-kind {
\r
1815 type scheduler-kind-type;
\r
1816 default "SCHEDULER_KIND_TYPE_NOT_YET_DEFINED";
\r
1818 "Type of scheduler to be used for this queue.";
\r
1825 "Only relevant if (schedulerKind==WFQ) OR (schedulerKind==DWRR) OR (schedulerKind==WRR). Serving rate for this weighted fair queueing queue as a percentage value.";
\r
1831 grouping container-current-problem-type {
\r
1832 leaf problem-name {
\r
1834 default "Problem name not specified.";
\r
1837 "Name of the alarm according to Container::ContainerCapability::supportedAlarms";
\r
1839 uses current-problem;
\r
1844 grouping queue-utilization-type {
\r
1846 type queue-name-type;
\r
1849 "Name of the queue.";
\r
1851 leaf max-queue-length {
\r
1857 "Maximum observed queue length. openconfig-qos-interfaces.yang";
\r
1859 leaf avg-queue-length {
\r
1865 "Average observed queue length. openconfig-qos-interfaces.yang";
\r
1871 grouping container-performance-type {
\r
1872 leaf tx-ethernet-bytes-max-s {
\r
1878 "Counts the number of Bytes of Ethernet traffic (before header compression) transmitted within a second and keeps the highest value within the measurement period. Field to be left blank for all types of TDM containers.";
\r
1880 leaf tx-ethernet-bytes-max-m {
\r
1882 units "Bytes/min";
\r
1886 "Counts the number of Bytes of Ethernet traffic (before header compression) transmitted within a minute and keeps the highest value with in the measurement period. Field to be left blank for all types of TDM containers.";
\r
1888 leaf tx-ethernet-bytes-sum {
\r
1894 "Total number of Bytes of Ethernet traffic (before header compression) transmitted (in direction out of the device) during the measurement period. Field to be left blank for all types of TDM containers.";
\r
1896 list queue-utilization-list {
\r
1900 uses queue-utilization-type;
\r
1902 "Utilization of the respective queue. openconfig-qos-interfaces.yang";
\r
1904 leaf fec-corrected-blocks {
\r
1910 "802.3 according to 30.5.1.1.17 aFECCorrectedBlocks and 30.11.2.1.8 aPMEFECCorrectedBlocks and 45.2.1.94 10GBASE-R FEC corrected blocks counter. Counts received blocks that have been corrected by the Forward Error Correction (FEC) function.";
\r
1912 leaf fec-uncorrectable-blocks {
\r
1918 "802.3 according to 30.5.1.1.18 aFECUncorrectableBlocks and 30.11.2.1.9 aPMEFECUncorrectableBlocks and 45.2.1.95 10GBASE-R FEC uncorrected blocks counter. Counts received blocks that could not been corrected by the Forward Error Correction (FEC) function.";
\r
1920 leaf time-period {
\r
1926 "Total length of the measurement period in seconds.";
\r
1929 "Consolidated performance information of the Container.";
\r
1932 grouping container-current-performance-type {
\r
1933 container performance-data {
\r
1935 uses container-performance-type;
\r
1939 uses current-performance;
\r
1941 "Turns performance information into current performance information by inheriting from OTN_CurrentData.";
\r
1944 grouping container-historical-performance-type {
\r
1945 container performance-data {
\r
1947 uses container-performance-type;
\r
1951 uses historical-performance;
\r
1953 "Turns performance information into historical performance information by inheriting from OTN_HistoryData.";
\r