--- /dev/null
+module org-openroadm-otn-common {
+ namespace "http://org/openroadm/otn-common";
+ prefix org-openroadm-otn-common;
+
+ organization
+ "Open ROADM MSA";
+ contact
+ "OpenROADM.org";
+ description
+ "YANG definitions for common OTN interface atrtributes and types.
+
+ Copyright of the Members of the Open ROADM MSA Agreement dated (c) 2016,
+ AT&T Intellectual Property. 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.
+
+ Also contains code components extracted from IETF Interfaces. These code components
+ are copyrighted and licensed as follows:
+
+ Copyright (c) 2016 IETF Trust and the persons identified as the document authors.
+ All rights reserved.
+
+ This document is subject to BCP 78 and the IETF Trust’s Legal Provisions Relating
+ to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of
+ publication of this document. Please review these documents carefully, as they
+ describe your rights and restrictions with respect to this document. Code Components
+ extracted from this document must include Simplified BSD License text as described in
+ Section 4.e of the Trust Legal Provisions and are provided without warranty as
+ described in the Simplified BSD License.";
+
+ revision 2017-06-26 {
+ description
+ "Version 2.0";
+ }
+
+ grouping trail-trace {
+ leaf tx-sapi {
+ type string {
+ length "0 .. 15";
+ }
+ description
+ "The provisioned 15 character transmit trace SAPI. Implementations shall add the [0] field automatically per ITU-T G.709";
+ }
+ leaf tx-dapi {
+ type string {
+ length "0 .. 15";
+ }
+ description
+ "The provisioned 15 character transmit trace DAPI. Implementations shall add the [0] field automatically per ITU-T G.709";
+ }
+ leaf tx-operator {
+ type string {
+ length "0 .. 32";
+ }
+ description
+ "The provisioned 32 character Operator Specific field";
+ }
+ leaf accepted-sapi {
+ type string;
+ config false;
+ description
+ "The accepted SAPI recovered from the recieved multi-frame TTI field.
+ Received SAPI contains the receive data, minus the sapi[0] and any 0x00 padding at the end";
+ }
+ leaf accepted-dapi {
+ type string;
+ config false;
+ description
+ "The accepted DAPI recovered from the recieved multi-frame TTI field
+ Received DAPI contains the receive data, minus the dapi[0] and any 0x00 padding at the end";
+ }
+ leaf accepted-operator {
+ type string;
+ config false;
+ description
+ "The accepted Operator Specific field recovered from the recieved multi-frame TTI field";
+ }
+ leaf expected-sapi {
+ type string {
+ length "0 .. 15";
+ }
+ description
+ "The provisioned expected SAPI, to be compared with accepted TTI";
+ }
+ leaf expected-dapi {
+ type string {
+ length "0 .. 15";
+ }
+ description
+ "The provisioned expected DAPI, to be compared with accepted TTI";
+ }
+ leaf tim-act-enabled {
+ type boolean;
+ default "false";
+ description
+ "Enables TTI Mismatch consequent actions.";
+ }
+ leaf tim-detect-mode {
+ type enumeration {
+ enum "Disabled" {
+ description
+ "TTI is ignored";
+ }
+ enum "SAPI" {
+ description
+ "Expected SAPI is compared to the Accpeted TTI. Other TTI fields are ignored";
+ }
+ enum "DAPI" {
+ description
+ "Expected DAPI is compared to the Accpeted TTI. Other TTI fields are ignored";
+ }
+ enum "SAPI-and-DAPI" {
+ description
+ "Expected SAPI and Expected DAPI are compared to the Accpeted TTI. Operator specific TTI field is ignored";
+ }
+ }
+ default "Disabled";
+ }
+ }
+
+ grouping deg-threshold {
+ leaf degm-intervals {
+ type uint8 {
+ range "2 .. 10";
+ }
+ default "2";
+ description
+ "G.806 - Consecutive bad intervals required for declare dDEG";
+ }
+ leaf degthr-percentage {
+ type uint16 {
+ range "1 .. 10000";
+ }
+ default "100";
+ description
+ "Percentage of errored blocks required to declare an interval bad, in units of 0.01%";
+ }
+ }
+}