diff options
Diffstat (limited to 'src/plugins/yang/openconfig/openconfig-transport-line-protection.yang')
-rw-r--r-- | src/plugins/yang/openconfig/openconfig-transport-line-protection.yang | 612 |
1 files changed, 0 insertions, 612 deletions
diff --git a/src/plugins/yang/openconfig/openconfig-transport-line-protection.yang b/src/plugins/yang/openconfig/openconfig-transport-line-protection.yang deleted file mode 100644 index 0e21a02..0000000 --- a/src/plugins/yang/openconfig/openconfig-transport-line-protection.yang +++ /dev/null @@ -1,612 +0,0 @@ -module openconfig-transport-line-protection { - - yang-version "1"; - - // namespace - namespace "http://openconfig.net/yang/optical-transport-line-protection"; - - prefix "oc-line-protect"; - - import openconfig-extensions { prefix oc-ext; } - import openconfig-types { prefix oc-types; } - import openconfig-platform { prefix oc-platform; } - - // meta - organization "OpenConfig working group"; - - contact - "OpenConfig working group - www.openconfig.net"; - - description - "This model describes configuration and operational state data - for optical line protection elements, deployed as part of a - transport line system. An Automatic Protection Switch (APS) - is typically installed in the same device as the amplifiers - and wave-router, however an APS can also be a standalone - device. In both scenarios, it serves the same purpose of - providing protection using two dark fiber pairs to ensure the - amplifiers can still receive a signal if one of the two fiber - pairs is broken. The APS port details and directionality are - shown below. The three major attributes, together with their - modifiers, define the behavior of the APS and can be prioritized - in the descending order as shown in the following table"; - - // - // Automatic Protection Switch (APS) port details and directionality. - // _________ - // | | - // | | <=== LINE-PRIMARY-IN - // | | - // COMMON-IN ===> | | ===> LINE-PRIMARY-OUT - // | | - // | APS | - // COMMON-OUT <=== | | - // | | <=== LINE-SECONDARY-IN - // | | - // | | ===> LINE-SECONDARY-OUT - // |_______| - // - // - // The interaction of configuration attributes that control the - // protection switching behavior - // +------------------+--------------------+------------------------+ - // | Attribute | Modifier | Behavior | - // +------------------+--------------------+------------------------+ - // | force-to-port | n/a | turns off switching | - // | | | by forcing to primary | - // | | | or secondary | - // +------------------+--------------------+------------------------+ - // | relative-switch | relative-threshold | if set, overrides | - // | -threshold | -offset | primary and secondary | - // | | | switch thresholds | - // +------------------+--------------------+------------------------+ - // | primary-switch | primary-switch | sets respective | - // | -threshold, | -hysteresis | threshold to switch | - // | secondary-switch | | to opposite port | - // | -threshold | | | - // +------------------+--------------------+------------------------+ - - oc-ext:openconfig-version "0.4.0"; - - revision "2018-07-25" { - description - "Added wait-to-restore-time, hold-off-time, - relative-switch-threshold, relative-switch-threshold-offset, - forced-to-port, removed secondary-switch-hysteresis, and - edited the description of primary-switch-threshold, - secondary-switch-threshold, and primary-switch-hysteresis"; - reference "0.4.0"; - } - - revision "2017-09-08" { - description - "Correct bug with OSC interfaces"; - reference "0.3.1"; - } - - revision "2017-07-08" { - description - "Support multiple OCMs, add monitor port type - and refs to hw ports, "; - reference "0.3.0"; - } - - revision "2017-03-28" { - description - "Added min/max/avg stats, status for media channels, OCM, APS"; - reference "0.2.0"; - } - - revision "2016-08-05" { - description - "Initial public release"; - reference "0.1.0"; - } - - // extension statements - - // feature statements - - // identity statements - - identity APS_PATHS { - description - "Base identity for identifying the line paths on an - automatic protection switch"; - } - - identity PRIMARY { - base APS_PATHS; - description - "The primary line path connected to an automatic protection - switch port indicating the primary/preferred path"; - } - - identity SECONDARY { - base APS_PATHS; - description - "The secondary line path connected to an automatic protection - switch port indicating the secondary path"; - } - - // grouping statements - - grouping aps-input-port-config { - description - "Grouping for config related to unidirectional automatic - protection switch input ports"; - - leaf enabled { - type boolean; - default "true"; - description - "This leaf contains the configured, desired state of the - port. Disabling the port turns off alarm reporting for - the port"; - } - - leaf target-attenuation { - type decimal64 { - fraction-digits 2; - } - units dB; - description - "Target attenuation of the variable optical attenuator - associated with the port in increments of 0.01 dB."; - } - } - - grouping aps-output-port-config { - description - "Grouping for config related to unidirectional automatic - protection switch output ports"; - - leaf target-attenuation { - type decimal64 { - fraction-digits 2; - } - units dB; - description - "Target attenuation of the variable optical attenuator - associated with the port in increments of 0.01 dB"; - } - } - - grouping aps-input-port-state { - description - "Grouping for state related to unidirectional automatic - protection switch input ports"; - - leaf attenuation { - type decimal64 { - fraction-digits 2; - } - units dB; - description - "The attenuation of the variable optical attenuator - associated with the port in increments of 0.01 dB."; - } - - container optical-power { - description - "The optical input power of this port in units of - 0.01dBm. Optical input power represents the signal - traversing from an external destination into the module. - The power is measured before any attenuation. If avg/min/max - statistics are not supported, the target is expected to - just supply the instant value"; - - uses oc-types:avg-min-max-instant-stats-precision2-dBm; - } - } - - grouping aps-output-port-state { - description - "Grouping for state related to unidirectional automatic - protection switch output ports"; - - leaf attenuation { - type decimal64 { - fraction-digits 2; - } - units dB; - description - "The attenuation of the variable optical attenuator - associated with the port in increments of 0.01 dB"; - } - - container optical-power { - description - "The optical output power of this port in units of - 0.01dBm. Optical output power represents the signal - traversing from the module to an external destination. The - power is measured after any attenuation. If avg/min/max - statistics are not supported, the target is expected to - just supply the instant value"; - - uses oc-types:avg-min-max-instant-stats-precision2-dBm; - } - } - - grouping aps-ports { - description - "Top level grouping for automatic protection switch ports"; - - container line-primary-in { - description - "Container for information related to the line primary - input port"; - - container config { - description - "Configuration data for the line primary input port"; - - uses aps-input-port-config; - } - - container state { - - config false; - - description - "State data for the line primary input port"; - - uses aps-input-port-config; - uses aps-input-port-state; - } - - } - - container line-primary-out { - description - "Container for information related to the line primary - output port"; - - container config { - description - "Configuration data for the line primary output port"; - - uses aps-output-port-config; - } - - container state { - - config false; - - description - "State data for the line primary output port"; - - uses aps-output-port-config; - uses aps-output-port-state; - } - } - - container line-secondary-in { - description - "Container for information related to the line secondary - input port"; - - container config { - description - "Configuration data for the line secondary input port"; - - uses aps-input-port-config; - } - - container state { - - config false; - - description - "State data for the line secondary input port"; - - uses aps-input-port-config; - uses aps-input-port-state; - } - } - - container line-secondary-out { - description - "Container for information related to the line secondary - output port"; - - container config { - description - "Configuration data for the line secondary output port"; - - uses aps-output-port-config; - } - - container state { - - config false; - - description - "State data for the line secondary output port"; - - uses aps-output-port-config; - uses aps-output-port-state; - } - } - - container common-in { - description - "Container for information related to the line common - input port"; - - container config { - description - "Configuration data for the line common input port"; - - uses aps-input-port-config; - } - - container state { - - config false; - - description - "State data for the line common input port"; - - uses aps-input-port-config; - uses aps-input-port-state; - } - } - - container common-output { - description - "Container for information related to the line common - output port"; - - container config { - description - "Configuration data for the line common output port"; - - uses aps-output-port-config; - } - - container state { - - config false; - - description - "State data for the line common output port"; - - uses aps-output-port-config; - uses aps-output-port-state; - } - } - } - - grouping aps-config { - description - "Configuration data for automatic protection switch modules"; - - leaf name { - type leafref { - path "/oc-platform:components/oc-platform:component/" + - "oc-platform:name"; - } - description - "Reference to the component name (in the platform model) - corresponding to this automatic protection switch module - in the device"; - } - - leaf revertive { - type boolean; - description - "Revertive behavior of the module. If True, then - automatically revert after protection switch once the - fault is restored. This leaf is not valid when the - relative-switch-threshold is in effect"; - } - - leaf wait-to-restore-time { - type uint32; - units milliseconds; - description - "The time that must elapse before an APS path - that has recovered from an signal failure (SF) or signal - degradation (SD) condition can be used again to transport - the normal traffic signal. During this time period, an SF or - SD condition shall override the wait-to-restore time period. - This leaf can only take effect when the revertive leaf - equals true"; - } - - leaf hold-off-time { - type uint32; - units milliseconds; - description - "The time delay between the declaration of an SF or SD - condition and the initiation of the protection switching - algorithm"; - } - - leaf primary-switch-threshold { - type decimal64 { - fraction-digits 2; - } - units dBm; - description - "The threshold at which the primary line port will switch to - the opposite line port in increments of 0.01 dBm. If the - hardware supports only one switch threshold for primary and - and secondary ports then it is recommended to set both - primary-switch-threshold and secondary-switch-threshold to - the same value to be explicit. When the relative switch - threshold is enabled, i.e. set to a non-zero value, the - primary switch threshold will be overridden"; - } - - leaf primary-switch-hysteresis { - type decimal64 { - fraction-digits 2; - } - units dB; - default 0; - description - "The delta in dB between the primary-switch-threshold - and the signal received on the primary APS_PATH before - initiating a switch from the secondary APS_PATH to the - primary APS_PATH, in order to prevent toggling between ports - when an input signal is very close to the threshold. A zero - value means the switch hysteresis is disabled."; - } - - leaf secondary-switch-threshold { - type decimal64 { - fraction-digits 2; - } - units dBm; - description - "The threshold at which the secondary line port will switch to - the opposite line port in increments of 0.01 dBm. If the - hardware supports only one switch threshold for primary and - and secondary ports then it is recommended to set both - primary-switch-threshold and secondary-switch-threshold to - the same value to be explicit. When the relative switch - threshold is enabled, i.e. set to a non-zero value, the - secondary switch threshold will be overridden"; - } - - leaf relative-switch-threshold { - type decimal64 { - fraction-digits 2; - } - units dB; - default 0; - description - "The delta threshold in dB at which the current line port - will switch to the opposite line port. It can be set to - the value of 0dB. When set to 0dB, the threshold is ignored - and the system automatically applies the primary and - secondary switch thresholds. When set to a non-zero value, - it overrides the primary and secondary switch thresholds"; - } - - leaf relative-switch-threshold-offset { - type decimal64 { - fraction-digits 2; - } - units dB; - default 0; - description - "The offset of the relative switch threshold that compensates - the normal difference of receiving power between the primary - and secondary line ports. A negative offset corresponds to - the situation where the secondary line port receives a higher - power than the primary line port in normal condition, and a - positive offset means the opposite. The offset will only work - when the relative switch threshold is set to a non-zero - value"; - } - - leaf force-to-port { - type enumeration { - enum NONE { - description - "Do not force the switch to stay on any line port"; - } - enum PRIMARY { - description - "Force the switch to stay on the primary line port"; - } - enum SECONDARY { - description - "Force the switch to stay on the secondary line port"; - } - } - default NONE; - description - "Explicitly set the switch to stay on a port regardless of - its operational condition"; - } - } - - grouping aps-state { - description - "State data for automatic protection switch modules"; - - leaf active-path { - type identityref { - base APS_PATHS; - } - description - "Indicates which line path on the protection switch is - currently the active path connected to the common port"; - } - } - - grouping automatic-protection-switch-top { - description - "Top level grouping for automatic protection switch data"; - - container aps-modules { - description - "Enclosing container for list of automatic protection - switch modules"; - - list aps-module { - key "name"; - description - "List of automatic protection switch modules present - in the device"; - - leaf name { - type leafref { - path "../config/name"; - } - description - "Reference to the config name list key"; - } - - container config { - description - "Configuration data for an automatic protection - switch module"; - - uses aps-config; - } - - container state { - - config false; - - description - "Operational state data for an automatic protection - switch module"; - - uses aps-config; - uses aps-state; - } - - container ports { - description - "Top level grouping for automatic protection switch ports"; - - uses aps-ports; - } - } - } - } - - grouping transport-line-protection-top { - description - "Top level grouping for transport line protection data"; - - container aps { - description - "Top level grouping for automatic protection switch data"; - - uses automatic-protection-switch-top; - } - } - - // data definition statements - - uses transport-line-protection-top; - -} |