aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/yang/openconfig/openconfig-transport-line-protection.yang
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/yang/openconfig/openconfig-transport-line-protection.yang')
-rw-r--r--src/plugins/yang/openconfig/openconfig-transport-line-protection.yang612
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;
-
-}