YANG definitions for optical power rebalance operations. Copyright of the Members of the Open ROADM MSA Agreement dated (c) 20...
Version: 2024-05-31
module org-openroadm-rebalance-optical-power { yang-version 1; namespace "http://org/openroadm/rebalance-optical-power"; prefix org-openroadm-rebalance-optical-power; import org-openroadm-common-service-types { prefix org-openroadm-common-service-types; revision-date "2024-05-31"; } import org-openroadm-common-rebalance-optical-power { prefix org-openroadm-common-rebalance-optical-power; revision-date "2024-05-31"; } import ietf-yang-types { prefix yang; revision-date "2013-07-15"; } organization "Open ROADM MSA"; contact "OpenROADM.org"; description "YANG definitions for optical power rebalance operations. Copyright of the Members of the Open ROADM MSA Agreement dated (c) 2016, All other rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the Members of the Open ROADM MSA Agreement nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT ''AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE"; revision "2024-05-31" { description "Version 15.1"; } identity service-rpc-identity { description "Identifies the service rpc associated with this callback"; } identity rebalance-optical-power-operations { base service-rpc-identity; description "Identity for the optical power rebalance operation rpc"; } typedef operation-result { type string; } rpc rebalance-optical-power-uni-link { description "RPC for unidirectional link optical power rebalancing."; input { container sdnc-request-header { leaf request-id { type string; } leaf rpc-action { type rpc-actions; } leaf notification-url { type string; } leaf request-system-id { type string; } } // container sdnc-request-header container link-rebalance-optical-power-options { leaf degree-tx-power-threshold-lb { type org-openroadm-common-link-types:ratio-dB; description "Maximum (lower bound) difference allowed between the channel measured output power and its target-output-power if the measured output power is less than the target-output-power"; } leaf degree-tx-power-threshold-ub { type org-openroadm-common-link-types:ratio-dB; description "Maximum (upper bound) difference allowed between the channel measured output power and its target-output-power if the measured output power is greater than the target-output-power"; } leaf degree-tx-power-check-retries { type uint16; description "maximum number of times the power may be measured and checked when the power check on the previous measurement fails"; } leaf pm-polling-timeout { type uint16; units "seconds"; description "Maximum time to wait for a response when polling an NE for pm-data"; } } // container link-rebalance-optical-power-options leaf network-id { type string; mandatory true; description "Network-id of the OMS link. It will always be 'openroadm-topology'"; } leaf link-id { type string; mandatory true; description "Link-id of the uni-directional OMS link."; } } output { container configuration-response-common { leaf request-id { type string; mandatory true; } leaf response-code { type string; mandatory true; } leaf response-message { type string; } leaf ack-final-indicator { type string; mandatory true; } } // container configuration-response-common } } // rpc rebalance-optical-power-uni-link rpc rebalance-optical-power-bi-link { description "RPC for bidirectional link optical power rebalancing."; input { container sdnc-request-header { leaf request-id { type string; } leaf rpc-action { type rpc-actions; } leaf notification-url { type string; } leaf request-system-id { type string; } } // container sdnc-request-header container link-rebalance-optical-power-options { leaf degree-tx-power-threshold-lb { type org-openroadm-common-link-types:ratio-dB; description "Maximum (lower bound) difference allowed between the channel measured output power and its target-output-power if the measured output power is less than the target-output-power"; } leaf degree-tx-power-threshold-ub { type org-openroadm-common-link-types:ratio-dB; description "Maximum (upper bound) difference allowed between the channel measured output power and its target-output-power if the measured output power is greater than the target-output-power"; } leaf degree-tx-power-check-retries { type uint16; description "maximum number of times the power may be measured and checked when the power check on the previous measurement fails"; } leaf pm-polling-timeout { type uint16; units "seconds"; description "Maximum time to wait for a response when polling an NE for pm-data"; } } // container link-rebalance-optical-power-options leaf oms-clfi { type string; mandatory true; description "CLFI of the OMS link"; } } output { container configuration-response-common { leaf request-id { type string; mandatory true; } leaf response-code { type string; mandatory true; } leaf response-message { type string; } leaf ack-final-indicator { type string; mandatory true; } } // container configuration-response-common } } // rpc rebalance-optical-power-bi-link rpc rebalance-optical-power-service { description "RPC for service optical power rebalancing"; input { container sdnc-request-header { leaf request-id { type string; } leaf rpc-action { type rpc-actions; } leaf notification-url { type string; } leaf request-system-id { type string; } } // container sdnc-request-header container service-rebalance-optical-power-options { leaf xpdr-roadm-opc-loop-retries { type uint16; description "Number of times the transmit-power of the otsi/och interface on xpdr network port may be readjusted to ensure power received by the SRG PP is optimal"; } leaf srg-rx-tight-threshold { type org-openroadm-common-link-types:ratio-dB; description "Maximum difference between measured srg receive power and srg receive power target to be considered optimal"; } leaf srg-rx-loose-threshold { type org-openroadm-common-link-types:ratio-dB; description "Maximum amount the measured srg receive power could be away from the advertised minimum and maximum srg receive power range to be considered acceptable"; } leaf srg-rx-power-threshold-lb { type org-openroadm-common-link-types:ratio-dB; description "Maximum (lower bound) loss allowed across a network fiber-tail, which is the difference between the xpdr network transmit-power and measured srg receive power, when measured srg receive power is lower than xpdr network port transmit-power"; } leaf degree-tx-power-threshold-lb { type org-openroadm-common-link-types:ratio-dB; description "Maximum (lower bound) difference allowed between the channel measured output power and its target-output-power if the measured output power is less than the target-output-power"; } leaf degree-tx-power-threshold-ub { type org-openroadm-common-link-types:ratio-dB; description "Maximum (upper bound) difference allowed between the channel measured output power and its target-output-power if the measured output power is greater than the target-output-power"; } leaf degree-tx-power-check-retries { type uint16; description "maximum number of times the power may be measured and checked when the power check on the previous measurement fails"; } leaf xpdr-rx-channel-power-min { type org-openroadm-common-link-types:power-dBm; description "Minimum channel power an xpdr network port must receive"; } leaf xpdr-rx-channel-power-max { type org-openroadm-common-link-types:power-dBm; description "Maximum channel power an xpdr network port must receive"; } leaf pm-polling-timeout { type uint16; units "seconds"; description "Maximum time to wait for a response when polling an NE for pm-data"; } } // container service-rebalance-optical-power-options leaf service-name { type string; mandatory true; description "Service identifier. Unique within the context of a network."; } } output { container configuration-response-common { leaf request-id { type string; mandatory true; } leaf response-code { type string; mandatory true; } leaf response-message { type string; } leaf ack-final-indicator { type string; mandatory true; } } // container configuration-response-common } } // rpc rebalance-optical-power-service rpc service-rebalance-optical-power-rpc-async-callback { description "This is the callback notification that the controller invokes on the carrier system."; input { container configuration-response-common { leaf request-id { type string; mandatory true; } leaf response-code { type string; mandatory true; } leaf response-message { type string; } leaf ack-final-indicator { type string; mandatory true; } } // container configuration-response-common container service-identifiers { leaf service-name { type string; } leaf common-id { type string; } leaf version-number { type uint64; } } // container service-identifiers container service-rebalance-optical-power-results { list aToZ { key "optical-section-index"; leaf optical-section-index { type uint16; description "Represents the number of optical sections within the end-to-end path when they are ordered from traffic source to traffic destination"; } leaf status { type enumeration { enum "success" { value 0; } enum "failure" { value 1; } enum "not-attempted" { value 2; } } mandatory true; description "Success: Indicates that the action completed successfully; Not-Attempted: Indicates that the operation was skipped; Failure: Indicates that the operation failed."; } leaf reason { type string; description "Message indicating the reason for not-attempted or failure"; } } // list aToZ list zToA { key "optical-section-index"; leaf optical-section-index { type uint16; description "Represents the number of optical sections within the end-to-end path when they are ordered from traffic source to traffic destination"; } leaf status { type enumeration { enum "success" { value 0; } enum "failure" { value 1; } enum "not-attempted" { value 2; } } mandatory true; description "Success: Indicates that the action completed successfully; Not-Attempted: Indicates that the operation was skipped; Failure: Indicates that the operation failed."; } leaf reason { type string; description "Message indicating the reason for not-attempted or failure"; } } // list zToA } // container service-rebalance-optical-power-results container service-rebalance-optical-power-options { leaf xpdr-roadm-opc-loop-retries { type uint16; description "Number of times the transmit-power of the otsi/och interface on xpdr network port may be readjusted to ensure power received by the SRG PP is optimal"; } leaf srg-rx-tight-threshold { type org-openroadm-common-link-types:ratio-dB; description "Maximum difference between measured srg receive power and srg receive power target to be considered optimal"; } leaf srg-rx-loose-threshold { type org-openroadm-common-link-types:ratio-dB; description "Maximum amount the measured srg receive power could be away from the advertised minimum and maximum srg receive power range to be considered acceptable"; } leaf srg-rx-power-threshold-lb { type org-openroadm-common-link-types:ratio-dB; description "Maximum (lower bound) loss allowed across a network fiber-tail, which is the difference between the xpdr network transmit-power and measured srg receive power, when measured srg receive power is lower than xpdr network port transmit-power"; } leaf degree-tx-power-threshold-lb { type org-openroadm-common-link-types:ratio-dB; description "Maximum (lower bound) difference allowed between the channel measured output power and its target-output-power if the measured output power is less than the target-output-power"; } leaf degree-tx-power-threshold-ub { type org-openroadm-common-link-types:ratio-dB; description "Maximum (upper bound) difference allowed between the channel measured output power and its target-output-power if the measured output power is greater than the target-output-power"; } leaf degree-tx-power-check-retries { type uint16; description "maximum number of times the power may be measured and checked when the power check on the previous measurement fails"; } leaf xpdr-rx-channel-power-min { type org-openroadm-common-link-types:power-dBm; description "Minimum channel power an xpdr network port must receive"; } leaf xpdr-rx-channel-power-max { type org-openroadm-common-link-types:power-dBm; description "Maximum channel power an xpdr network port must receive"; } leaf pm-polling-timeout { type uint16; units "seconds"; description "Maximum time to wait for a response when polling an NE for pm-data"; } } // container service-rebalance-optical-power-options leaf rpc-timestamp { type yang:date-and-time; units "seconds"; description "timestamp of the initial rpc command that invoked the test"; } leaf timestamp { type yang:date-and-time; units "seconds"; description "timestamp of the callback/notification."; } } output { container configuration-response-common { leaf request-id { type string; mandatory true; } leaf response-code { type string; mandatory true; } leaf response-message { type string; } leaf ack-final-indicator { type string; mandatory true; } } // container configuration-response-common } } // rpc service-rebalance-optical-power-rpc-async-callback rpc link-rebalance-optical-power-rpc-async-callback { description "This is the callback notification that the controller invokes on the carrier system."; input { container configuration-response-common { leaf request-id { type string; mandatory true; } leaf response-code { type string; mandatory true; } leaf response-message { type string; } leaf ack-final-indicator { type string; mandatory true; } } // container configuration-response-common container link-rebalance-optical-power-results { list link { key "network-id link-id"; leaf network-id { type string; mandatory true; description "Network-id of the OMS link. It will always be 'openroadm-topology'"; } leaf link-id { type string; mandatory true; description "Link-id of the uni-directional OMS link."; } leaf status { type enumeration { enum "success" { value 0; } enum "failure" { value 1; } enum "not-attempted" { value 2; } } mandatory true; description "Success: Indicates that the action completed successfully; Not-Attempted: Indicates that the operation was skipped; Failure: Indicates that the operation failed."; } leaf reason { type string; description "Message indicating the reason for not-attempted or failure"; } list service { key "index"; leaf index { type uint16; description "Local id for list "; } container service-identifiers { leaf service-name { type string; } leaf common-id { type string; } leaf version-number { type uint64; } } // container service-identifiers leaf status { type enumeration { enum "success" { value 0; } enum "failure" { value 1; } enum "not-attempted" { value 2; } } mandatory true; description "Success: Indicates that the action completed successfully; Not-Attempted: Indicates that the operation was skipped; Failure: Indicates that the operation failed."; } leaf reason { type string; description "Message indicating the reason for not-attempted or failure"; } } // list service } // list link } // container link-rebalance-optical-power-results container link-rebalance-optical-power-options { leaf degree-tx-power-threshold-lb { type org-openroadm-common-link-types:ratio-dB; description "Maximum (lower bound) difference allowed between the channel measured output power and its target-output-power if the measured output power is less than the target-output-power"; } leaf degree-tx-power-threshold-ub { type org-openroadm-common-link-types:ratio-dB; description "Maximum (upper bound) difference allowed between the channel measured output power and its target-output-power if the measured output power is greater than the target-output-power"; } leaf degree-tx-power-check-retries { type uint16; description "maximum number of times the power may be measured and checked when the power check on the previous measurement fails"; } leaf pm-polling-timeout { type uint16; units "seconds"; description "Maximum time to wait for a response when polling an NE for pm-data"; } } // container link-rebalance-optical-power-options leaf network-id { type string; description "Network-id of the OMS link. It will always be 'openroadm-topology'"; } leaf link-id { type string; description "Link-id of the uni-directional OMS link."; } leaf oms-clfi { type string; description "CLFI of the OMS link"; } leaf rpc-timestamp { type yang:date-and-time; units "seconds"; description "timestamp of the initial rpc command that invoked the test"; } leaf timestamp { type yang:date-and-time; units "seconds"; description "timestamp of the callback/notification."; } } output { container configuration-response-common { leaf request-id { type string; mandatory true; } leaf response-code { type string; mandatory true; } leaf response-message { type string; } leaf ack-final-indicator { type string; mandatory true; } } // container configuration-response-common } } // rpc link-rebalance-optical-power-rpc-async-callback notification service-rebalance-optical-power-notification { description "This is the callback notification that the controller invokes on the carrier system."; container configuration-response-common { leaf request-id { type string; mandatory true; } leaf response-code { type string; mandatory true; } leaf response-message { type string; } leaf ack-final-indicator { type string; mandatory true; } } // container configuration-response-common container service-identifiers { leaf service-name { type string; } leaf common-id { type string; } leaf version-number { type uint64; } } // container service-identifiers container service-rebalance-optical-power-results { list aToZ { key "optical-section-index"; leaf optical-section-index { type uint16; description "Represents the number of optical sections within the end-to-end path when they are ordered from traffic source to traffic destination"; } leaf status { type enumeration { enum "success" { value 0; } enum "failure" { value 1; } enum "not-attempted" { value 2; } } mandatory true; description "Success: Indicates that the action completed successfully; Not-Attempted: Indicates that the operation was skipped; Failure: Indicates that the operation failed."; } leaf reason { type string; description "Message indicating the reason for not-attempted or failure"; } } // list aToZ list zToA { key "optical-section-index"; leaf optical-section-index { type uint16; description "Represents the number of optical sections within the end-to-end path when they are ordered from traffic source to traffic destination"; } leaf status { type enumeration { enum "success" { value 0; } enum "failure" { value 1; } enum "not-attempted" { value 2; } } mandatory true; description "Success: Indicates that the action completed successfully; Not-Attempted: Indicates that the operation was skipped; Failure: Indicates that the operation failed."; } leaf reason { type string; description "Message indicating the reason for not-attempted or failure"; } } // list zToA } // container service-rebalance-optical-power-results container service-rebalance-optical-power-options { leaf xpdr-roadm-opc-loop-retries { type uint16; description "Number of times the transmit-power of the otsi/och interface on xpdr network port may be readjusted to ensure power received by the SRG PP is optimal"; } leaf srg-rx-tight-threshold { type org-openroadm-common-link-types:ratio-dB; description "Maximum difference between measured srg receive power and srg receive power target to be considered optimal"; } leaf srg-rx-loose-threshold { type org-openroadm-common-link-types:ratio-dB; description "Maximum amount the measured srg receive power could be away from the advertised minimum and maximum srg receive power range to be considered acceptable"; } leaf srg-rx-power-threshold-lb { type org-openroadm-common-link-types:ratio-dB; description "Maximum (lower bound) loss allowed across a network fiber-tail, which is the difference between the xpdr network transmit-power and measured srg receive power, when measured srg receive power is lower than xpdr network port transmit-power"; } leaf degree-tx-power-threshold-lb { type org-openroadm-common-link-types:ratio-dB; description "Maximum (lower bound) difference allowed between the channel measured output power and its target-output-power if the measured output power is less than the target-output-power"; } leaf degree-tx-power-threshold-ub { type org-openroadm-common-link-types:ratio-dB; description "Maximum (upper bound) difference allowed between the channel measured output power and its target-output-power if the measured output power is greater than the target-output-power"; } leaf degree-tx-power-check-retries { type uint16; description "maximum number of times the power may be measured and checked when the power check on the previous measurement fails"; } leaf xpdr-rx-channel-power-min { type org-openroadm-common-link-types:power-dBm; description "Minimum channel power an xpdr network port must receive"; } leaf xpdr-rx-channel-power-max { type org-openroadm-common-link-types:power-dBm; description "Maximum channel power an xpdr network port must receive"; } leaf pm-polling-timeout { type uint16; units "seconds"; description "Maximum time to wait for a response when polling an NE for pm-data"; } } // container service-rebalance-optical-power-options leaf rpc-timestamp { type yang:date-and-time; units "seconds"; description "timestamp of the initial rpc command that invoked the test"; } leaf timestamp { type yang:date-and-time; units "seconds"; description "timestamp of the callback/notification."; } } // notification service-rebalance-optical-power-notification notification link-rebalance-optical-power-notification { description "This is the callback notification that the controller invokes on the carrier system."; container configuration-response-common { leaf request-id { type string; mandatory true; } leaf response-code { type string; mandatory true; } leaf response-message { type string; } leaf ack-final-indicator { type string; mandatory true; } } // container configuration-response-common container link-rebalance-optical-power-results { list link { key "network-id link-id"; leaf network-id { type string; mandatory true; description "Network-id of the OMS link. It will always be 'openroadm-topology'"; } leaf link-id { type string; mandatory true; description "Link-id of the uni-directional OMS link."; } leaf status { type enumeration { enum "success" { value 0; } enum "failure" { value 1; } enum "not-attempted" { value 2; } } mandatory true; description "Success: Indicates that the action completed successfully; Not-Attempted: Indicates that the operation was skipped; Failure: Indicates that the operation failed."; } leaf reason { type string; description "Message indicating the reason for not-attempted or failure"; } list service { key "index"; leaf index { type uint16; description "Local id for list "; } container service-identifiers { leaf service-name { type string; } leaf common-id { type string; } leaf version-number { type uint64; } } // container service-identifiers leaf status { type enumeration { enum "success" { value 0; } enum "failure" { value 1; } enum "not-attempted" { value 2; } } mandatory true; description "Success: Indicates that the action completed successfully; Not-Attempted: Indicates that the operation was skipped; Failure: Indicates that the operation failed."; } leaf reason { type string; description "Message indicating the reason for not-attempted or failure"; } } // list service } // list link } // container link-rebalance-optical-power-results container link-rebalance-optical-power-options { leaf degree-tx-power-threshold-lb { type org-openroadm-common-link-types:ratio-dB; description "Maximum (lower bound) difference allowed between the channel measured output power and its target-output-power if the measured output power is less than the target-output-power"; } leaf degree-tx-power-threshold-ub { type org-openroadm-common-link-types:ratio-dB; description "Maximum (upper bound) difference allowed between the channel measured output power and its target-output-power if the measured output power is greater than the target-output-power"; } leaf degree-tx-power-check-retries { type uint16; description "maximum number of times the power may be measured and checked when the power check on the previous measurement fails"; } leaf pm-polling-timeout { type uint16; units "seconds"; description "Maximum time to wait for a response when polling an NE for pm-data"; } } // container link-rebalance-optical-power-options leaf network-id { type string; description "Network-id of the OMS link. It will always be 'openroadm-topology'"; } leaf link-id { type string; description "Link-id of the uni-directional OMS link."; } leaf oms-clfi { type string; description "CLFI of the OMS link"; } leaf rpc-timestamp { type yang:date-and-time; units "seconds"; description "timestamp of the initial rpc command that invoked the test"; } leaf timestamp { type yang:date-and-time; units "seconds"; description "timestamp of the callback/notification."; } } // notification link-rebalance-optical-power-notification } // module org-openroadm-rebalance-optical-power
© 2023 YumaWorks, Inc. All rights reserved.