summaryrefslogtreecommitdiffstats
path: root/src/plugins/yang/openconfig/openconfig-optical-amplifier.yang
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/yang/openconfig/openconfig-optical-amplifier.yang')
-rw-r--r--src/plugins/yang/openconfig/openconfig-optical-amplifier.yang474
1 files changed, 474 insertions, 0 deletions
diff --git a/src/plugins/yang/openconfig/openconfig-optical-amplifier.yang b/src/plugins/yang/openconfig/openconfig-optical-amplifier.yang
new file mode 100644
index 0000000..1467148
--- /dev/null
+++ b/src/plugins/yang/openconfig/openconfig-optical-amplifier.yang
@@ -0,0 +1,474 @@
+module openconfig-optical-amplifier {
+
+ yang-version "1";
+
+ // namespace
+ namespace "http://openconfig.net/yang/optical-amplfier";
+
+ prefix "oc-opt-amp";
+
+ import openconfig-platform { prefix oc-platform; }
+ import openconfig-transport-line-common { prefix oc-line-com; }
+ import openconfig-types { prefix oc-types; }
+ import openconfig-extensions { prefix oc-ext; }
+
+
+ // meta
+ organization "OpenConfig working group";
+
+ contact
+ "OpenConfig working group
+ www.openconfig.net";
+
+ description
+ "This model describes configuration and operational state data
+ for optical amplifiers, deployed as part of a transport
+ line system.";
+
+ oc-ext:openconfig-version "0.4.0";
+
+ revision "2017-10-02" {
+ description
+ "Add support for fiber type profile and physical component
+ association for amplifier gain blocks.";
+ reference "0.4.0";
+ }
+
+ revision "2017-09-08" {
+ description
+ "Correct bug with OSC interfaces";
+ reference "0.3.1";
+ }
+
+ revision "2017-07-08" {
+ description
+ "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-03-31" {
+ description
+ "Initial public release";
+ reference "0.1.0";
+ }
+
+
+ // extension statements
+
+ // feature statements
+
+ // identity statements
+
+ identity OPTICAL_AMPLIFIER_TYPE {
+ description
+ "Type definition for different types of optical amplifiers";
+ }
+
+ identity EDFA {
+ base OPTICAL_AMPLIFIER_TYPE;
+ description
+ "Erbium doped fiber amplifer (EDFA)";
+ }
+
+ identity FORWARD_RAMAN {
+ base OPTICAL_AMPLIFIER_TYPE;
+ description
+ "Forward pumping Raman amplifier";
+ }
+
+ identity BACKWARD_RAMAN {
+ base OPTICAL_AMPLIFIER_TYPE;
+ description
+ "Backward pumping Raman amplifier";
+ }
+
+ identity HYBRID {
+ base OPTICAL_AMPLIFIER_TYPE;
+ description
+ "Hybrid backward pumping Raman + EDFA amplifier";
+ }
+
+ identity GAIN_RANGE {
+ description
+ "Base type for expressing the gain range for a switched gain
+ amplifier. The gain range is expressed as a generic setting,
+ e.g., LOW/MID/HIGH. The actual db range will be determined
+ by the implementation.";
+ }
+
+ identity LOW_GAIN_RANGE {
+ base GAIN_RANGE;
+ description
+ "LOW gain range setting";
+ }
+
+ identity MID_GAIN_RANGE {
+ base GAIN_RANGE;
+ description
+ "MID gain range setting";
+ }
+
+ identity HIGH_GAIN_RANGE {
+ base GAIN_RANGE;
+ description
+ "HIGH gain range setting";
+ }
+
+ identity FIXED_GAIN_RANGE {
+ base GAIN_RANGE;
+ description
+ "Fixed or non-switched gain amplfier";
+ }
+
+ identity OPTICAL_AMPLIFIER_MODE {
+ description
+ "Type definition for different types of optical amplifier
+ operating modes";
+ }
+
+ identity CONSTANT_POWER {
+ base OPTICAL_AMPLIFIER_MODE;
+ description
+ "Constant power mode";
+ }
+
+ identity CONSTANT_GAIN {
+ base OPTICAL_AMPLIFIER_MODE;
+ description
+ "Constant gain mode";
+ }
+
+
+ identity FIBER_TYPE_PROFILE {
+ description
+ "Type definition for different profiles of fiber types";
+ }
+
+ identity DSF {
+ base FIBER_TYPE_PROFILE;
+ description
+ "Dispersion shifted fiber";
+ }
+
+ identity LEAF {
+ base FIBER_TYPE_PROFILE;
+ description
+ "Large effective area fiber";
+ }
+
+ identity SSMF {
+ base FIBER_TYPE_PROFILE;
+ description
+ "Standard single mode fiber";
+ }
+
+ identity TWC {
+ base FIBER_TYPE_PROFILE;
+ description
+ "True wave classic";
+ }
+
+ identity TWRS {
+ base FIBER_TYPE_PROFILE;
+ description
+ "True wave reduced slope";
+ }
+
+ // grouping statements
+
+ grouping optical-amplifier-config {
+ description
+ "Configuration data for optical amplifiers";
+
+ leaf name {
+ type string;
+ description
+ "User-defined name assigned to identify a specific amplifier
+ in the device";
+ }
+
+ leaf type {
+ type identityref {
+ base OPTICAL_AMPLIFIER_TYPE;
+ }
+ description
+ "Type of the amplifier";
+ }
+
+ leaf target-gain {
+ type decimal64 {
+ fraction-digits 2;
+ range 0..max;
+ }
+ units dB;
+ description
+ "Positive gain applied by the amplifier.";
+ }
+
+ leaf target-gain-tilt {
+ type decimal64 {
+ fraction-digits 2;
+ }
+ units dB;
+ description
+ "Gain tilt control";
+ }
+
+ leaf gain-range {
+ type identityref {
+ base GAIN_RANGE;
+ }
+ description
+ "Selected gain range. The gain range is a platform-defined
+ value indicating the switched gain amplifier setting";
+ }
+
+ leaf amp-mode {
+ type identityref {
+ base OPTICAL_AMPLIFIER_MODE;
+ }
+ description
+ "The operating mode of the amplifier";
+ }
+
+ leaf target-output-power {
+ type decimal64 {
+ fraction-digits 2;
+ }
+ units dBm;
+ description
+ "Output optical power of the amplifier.";
+ }
+
+ leaf enabled {
+ type boolean;
+ description
+ "Turns power on / off to the amplifiers gain module.";
+ }
+
+ leaf fiber-type-profile {
+ type identityref {
+ base FIBER_TYPE_PROFILE;
+ }
+ description
+ "The fiber type profile specifies details about the
+ fiber type which are needed to accurately determine
+ the gain and perform efficient amplification. This is
+ only needed for Raman type amplifiers.";
+ }
+
+ }
+
+ grouping optical-amplifier-state {
+ description
+ "Operational state data for optical amplifiers";
+
+ leaf component {
+ type leafref {
+ path "/oc-platform:components/oc-platform:component/" +
+ "oc-platform:name";
+ }
+ description
+ "Reference to the system-supplied physical component that
+ the amplifier gain block is contained within. Multiple
+ amplifier gain blocks may be contained within the same
+ physical component.";
+ }
+
+ leaf ingress-port {
+ type leafref {
+ path "/oc-platform:components/oc-platform:component/" +
+ "oc-platform:name";
+ }
+ description
+ "Reference to system-supplied name of the amplifier ingress
+ port. This leaf is only valid for ports of type INGRESS.";
+ }
+
+ leaf egress-port {
+ type leafref {
+ path "/oc-platform:components/oc-platform:component/" +
+ "oc-platform:name";
+ }
+ description
+ "Reference to system-supplied name of the amplifier egress
+ port. This leaf is only valid for ports of type EGRESS.";
+ }
+
+ container actual-gain {
+ description
+ "The actual gain applied by the amplifier in units of
+ 0.01dB. If avg/min/max statistics are not supported,
+ just supply the instant value";
+
+ uses oc-types:avg-min-max-instant-stats-precision2-dB;
+ }
+
+ container actual-gain-tilt {
+ description
+ "The actual tilt applied by the amplifier in units of
+ 0.01dB. If avg/min/max statistics are not supported,
+ just supply the instant value";
+
+ uses oc-types:avg-min-max-instant-stats-precision2-dB;
+ }
+
+ container input-power-total {
+ description
+ "The total input optical power of this port in units
+ of 0.01dBm. If avg/min/max statistics are not supported,
+ just supply the instant value";
+
+ uses oc-types:avg-min-max-instant-stats-precision2-dBm;
+ }
+
+ container input-power-c-band {
+ description
+ "The C band (consisting of approximately 191 to 195 THz or
+ 1530nm to 1565 nm) input optical power of this port in units
+ of 0.01dBm. If avg/min/max statistics are not supported,
+ just supply the instant value";
+
+ uses oc-types:avg-min-max-instant-stats-precision2-dBm;
+ }
+
+ container input-power-l-band {
+ description
+ "The L band (consisting of approximately 184 to 191 THz or
+ 1565 to 1625 nm) input optical power of this port in units
+ of 0.01dBm. If avg/min/max statistics are not supported,
+ just supply the instant value";
+
+ uses oc-types:avg-min-max-instant-stats-precision2-dBm;
+ }
+
+ container output-power-total {
+ description
+ "The total output optical power of this port in units
+ of 0.01dBm. If avg/min/max statistics are not supported,
+ just supply the instant value";
+
+ uses oc-types:avg-min-max-instant-stats-precision2-dBm;
+ }
+
+ container output-power-c-band {
+ description
+ "The C band (consisting of approximately 191 to 195 THz or
+ 1530nm to 1565 nm)output optical power of this port in units
+ of 0.01dBm. If avg/min/max statistics are not supported,
+ just supply the instant value";
+
+ uses oc-types:avg-min-max-instant-stats-precision2-dBm;
+ }
+
+ container output-power-l-band {
+ description
+ "The L band (consisting of approximately 184 to 191 THz or
+ 1565 to 1625 nm)output optical power of this port in units
+ of 0.01dBm. If avg/min/max statistics are not supported,
+ just supply the instant value";
+
+ uses oc-types:avg-min-max-instant-stats-precision2-dBm;
+ }
+
+ container laser-bias-current {
+ description
+ "The current applied by the system to the transmit laser to
+ achieve the output power. The current is expressed in mA
+ with up to two decimal precision. If avg/min/max statistics
+ are not supported, just supply the instant value";
+
+ uses oc-types:avg-min-max-instant-stats-precision2-mA;
+ }
+
+ container optical-return-loss {
+ description
+ "The optical return loss (ORL) is the ratio of the light
+ reflected back into the port to the light launched out of
+ the port. ORL is in units of 0.01dBm. If avg/min/max
+ statistics are not supported, just supply the instant value";
+
+ uses oc-types:avg-min-max-instant-stats-precision2-dBm;
+ }
+ }
+
+ grouping optical-amplifier-top {
+ description
+ "Top-level grouping for optical amplifier data";
+
+ container optical-amplifier {
+ description
+ "Enclosing container for amplifiers and supervisory channels";
+
+ container amplifiers {
+ description
+ "Enclosing container for list of amplifiers";
+
+ list amplifier {
+ key "name";
+ description
+ "List of optical amplifiers present in the device";
+
+ leaf name {
+ type leafref {
+ path "../config/name";
+ }
+ description
+ "Reference to the name of the amplifier";
+ }
+
+ container config {
+ description
+ "Configuration data for the amplifier";
+
+ uses optical-amplifier-config;
+ }
+
+ container state {
+
+ config false;
+
+ description
+ "Operational state data for the amplifier";
+
+ uses optical-amplifier-config;
+ uses optical-amplifier-state;
+ }
+ }
+ }
+
+ container supervisory-channels {
+ description
+ "Enclosing container for list of supervisory channels";
+
+ list supervisory-channel {
+ key "interface";
+ description
+ "List of supervisory channels";
+
+ leaf interface {
+ type leafref {
+ path "../config/interface";
+ }
+ description
+ "Reference to the interface of the supervisory channel";
+ }
+
+ uses oc-line-com:optical-osc-top;
+ }
+ }
+ }
+ }
+
+ // data definition statements
+
+ uses optical-amplifier-top;
+
+
+}