<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.29 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-rokui-ccamp-actn-wdm-pluggable-modelling-03" category="info" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.30.2 -->
  <front>
    <title abbrev="Modelling Optical Pluggables">Data Modelling and Gap Analysis of Optical Pluggables in Packet Over Optical Network</title>
    <seriesInfo name="Internet-Draft" value="draft-rokui-ccamp-actn-wdm-pluggable-modelling-03"/>
    <author initials="R." surname="Rokui" fullname="Reza Rokui">
      <organization>Ciena</organization>
      <address>
        <email>rrokui@ciena.com</email>
      </address>
    </author>
    <author initials="A." surname="Guo" fullname="Aihua Guo">
      <organization>Futurewei Technologies</organization>
      <address>
        <email>aihuaguo.ietf@gmail.com</email>
      </address>
    </author>
    <author initials="P." surname="Bedard" fullname="Phil Bedard">
      <organization>Cisco</organization>
      <address>
        <email>phbedard@cisco.com</email>
      </address>
    </author>
    <author initials="B." surname="Swamynathan" fullname="B Swamynathan">
      <organization>Nokia</organization>
      <address>
        <email>swamynathan.b@nokia.com</email>
      </address>
    </author>
    <author initials="G." surname="Grammel" fullname="Gert Grammel">
      <organization>Juniper</organization>
      <address>
        <email>ggrammel@juniper.net</email>
      </address>
    </author>
    <date year="2025" month="September" day="09"/>
    <area>Routing</area>
    <workgroup>Common Control and Measurement Plane</workgroup>
    <keyword>next generation</keyword>
    <keyword>unicorn</keyword>
    <keyword>sparkling distributed ledger</keyword>
    <abstract>
      <?line 209?>

<t>This draft outlines the pluggable module attributes within a host device. It includes representations of optical pluggable module capabilities, configuration, states, and telemetry data. These attributes draws from existing IETF standards and incorporates input from other industry forums and standards, such as ITU-T, OpenConfig, OIF and ONF TAPI, to ensure uniform structuring and consistent naming conventions. Note that the IETF terminology shall be given precedence wherever possible. In case there is a duplication of an attribute, this draft may describe how the attribute is named in the related document. Only if no attribute exists in IETF RFCs or IETF WG drafts, new attributes shall be introduced if they are needed.</t>
      <t>This draft provides a gap analysis with respect to existing IETF work in the following areas:</t>
      <ul spacing="normal">
        <li>
          <t>It provides an analysis of optical attributes in a set of IETF documents with specifications of other organizations to identify modeling gaps.</t>
        </li>
        <li>
          <t>It identifies modeling needs addressing the specific aspect of pluggability of transceiver modules. The authors recognize the fact that that not all pluggable modules are coherent, not all coherent pluggable modules are DWDM capable and not all DWDM capable interfaces are implemented as pluggable modules. This analysis identifies gaps to manage the lifecycle of an optical pluggable module, from operator approval and viability assessment, to deployment, monitoring and phase-out.</t>
        </li>
      </ul>
      <t>The lifecycle of an optical pluggable module, from operator approval and viability assessment to deployment and monitoring, is also addressed.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://italobusi.github.io/actn-wdm-pluggable-modelling/draft-rokui-ccamp-actn-wdm-pluggable-modelling.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-rokui-ccamp-actn-wdm-pluggable-modelling/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Common Control and Measurement Plane Working Group mailing list (<eref target="mailto:ccamp@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/ccamp/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/ccamp/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/italobusi/actn-wdm-pluggable-modelling"/>.</t>
    </note>
  </front>
  <middle>
    <?line 220?>

<section anchor="terminology">
      <name>Terminology</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <?line -18?>

<t>The following terms abbreviations are used in this document:</t>
      <ul spacing="normal">
        <li>
          <t>Optical modules: short term for optical transceiver modules. Such module can be of fixed or pluggable module nature and provides the optical interface for communication.</t>
        </li>
        <li>
          <t>Pluggable modules: short term for pluggable optical transceiver module. Pluggable modules are a specific form of optical modules that are field replaceable. They pro</t>
        </li>
        <li>
          <t>Coherent module: short term for optical transceiver module providing coherent optical modulation capabilities.</t>
        </li>
        <li>
          <t>DWDM module: short term for coherent module supporting the use of a DWDM line system.</t>
        </li>
        <li>
          <t>Common Management Interface Specification (CMIS): The Common Management Interface Specification is an Implementation Agreement (IA) developed by the Optical Internet Forum (OIF) <xref target="CMIS"/>. This specification defines an interface for managing optical (and copper) modules in a standardized way while still permitting vendor-specific functionality. It eases the integration of modules supporting the CMIS interface into host platforms from different system vendors. It shall be noted that CMIS targets any module, not only coherent optical modules, which is the scope of this document. The CMIS interface is applicable to on-board module types (fixed optics) as well as pluggable modules types such as QSFP Double-Density (QSFP-DD), OSFP, COBO, QSFP and other module types.</t>
        </li>
        <li>
          <t>optical module media side:</t>
        </li>
        <li>
          <t>optical module host side:</t>
        </li>
        <li>
          <t>Monitored attributes: The optical module attributes which can be measured, monitored, estimated, or otherwise observed. The monitored attributes are the inputs to performance monitors which in turn provide real time samples, threshold crossing supervision, and sometimes sample statistics.</t>
        </li>
      </ul>
    </section>
    <section anchor="introduction">
      <name>Introduction</name>
      <t>Packet traffic has been transmitted across optical networks for many years, leveraging the advantages of optical transmission and switching combined with packet switching. Traditionally, Optical Line Systems were fully integrated with DWDM Transponder modules in proprietary implementations while non-DWDM (aka. client) modules were integrated with their hosts. With the advent of open optical networking, also DWDM transponder modules are now hosted by sytems outside the Line System.</t>
      <t>In numerous network setups, packet and optical networks have been engineered, operated, and managed separately, leading to siloed operations that can be suboptimal and inefficient. Advancements in optical component design have led to increased density, enabling entire coherent optical terminal systems that previously required multiple circuit packs to now fit into a single small form factor "coherent optical module." Integrating coherent optical modules into switching and routing devices can result in reduced network costs, power consumption, and footprint, while also enhancing data transfer rates, reducing latency, and expanding capacity, although in some cases, separate packet and optical solutions may still be preferred due to other engineering and deployment considerations.</t>
      <t>These trends, coupled with the desire to utilize the best components available, have given rise to open optical pluggable modules. Communication between optical modules and the host occurs through the CMIS standard developed by OIF <xref target="CMIS"/>.</t>
      <t>While standardized transmission modes like ZR can handle basic applications, proprietary modes from vendors are often necessary to achieve optimal performance.</t>
      <t>This draft provides a gap analysis of optical pluggable modules in the context of a packet over optical network. The model presented in this document analyzes three key functional blocks:</t>
      <ul spacing="normal">
        <li>
          <t>Photonic/Optical attributes: These attributes defines the characteristics of the optical and photonic properties such as spectrum, polarization, dispersion etc.</t>
        </li>
        <li>
          <t>Host/Electrical attributes: These attributes defines the characteristics of interconnect between the host and the optical pluggable module, such as lane count, FEC etc., which both the optical pluggable module and the packet host must understand and act upon.</t>
        </li>
        <li>
          <t>Physical and functional aspects of the pluggable module (i.e., equipment): This defines attributes of the optical pluggable module itself, such as plug type, version, thermal characteristics, power consumption etc.</t>
        </li>
      </ul>
      <t>For each of these functional blocks, the model shall provide the necessary attributes in following areas:</t>
      <ul spacing="normal">
        <li>
          <t>Capabilities: These attributes are read-only and defines the functional capabilities of the optical module. They are defined in a profile called "operational-mode" and contains attributes such as modulation, bit-rate, baud-rate, chromatic-dispersion, polarization, FEC etc. An optical module might support one or multiple operational-modes.</t>
        </li>
        <li>
          <t>Configurations: Since an optical module can support multiple operational-modes, these read-write attributes configure the module to be functional in one of those operational- modes. Example of configuration attributes are output power, central frequency and operational-mode.</t>
        </li>
        <li>
          <t>States and performance monitoring telemetry data: These read-only attributes will be generated by optical modules and represents various states and PM data of the optical modules such as channel input power, channel output power, central frequency, laser temperature, current OSNR, Link Up/Down State, Alarm State, Laser On/Off State etc. In most cases these attributes are changing with time and optical modules report current, average, min and max values. It is also possible to apply thresholds on each of these attributes to support threshold crossing alert (TCA).</t>
        </li>
      </ul>
      <t>Both vendor-agnostic and vendor-specific attributes are important considerations in the modeling of optical pluggable modules.</t>
      <t>The document is divided into the following sections:</t>
      <ul spacing="normal">
        <li>
          <t><xref target="optical-pluggable-in-device-packet-function"/>: Optical pluggable module in a Device with Packet Functions</t>
        </li>
        <li>
          <t><xref target="building-blocks"/>: Optical Module Functional Building Block</t>
        </li>
        <li>
          <t><xref target="data-model"/>: Optical Modules Data Modeling</t>
        </li>
        <li>
          <t><xref target="google-sheet"/>: Complete list of Optical Modules Attributes From Google Sheet</t>
        </li>
        <li>
          <t><xref target="gap-analysis"/>: Optical Module Data Modeling Gap Analysis</t>
        </li>
        <li>
          <t><xref target="plug-lcm"/>: Optical Pluggables Lifecycle Management</t>
        </li>
      </ul>
    </section>
    <section anchor="optical-pluggable-in-device-packet-function">
      <name>Optical pluggable module in a Device with Packet Functions</name>
      <t><xref target="_figure-details-packet-optical-device"/> shows a host packet device from vendor X, which is connected to optical device, equipped with optical pluggable modules from vendor X and Y. This figure exposes the following internal and external interfaces:</t>
      <t>A. This interface provides the control of the host and all it's components. Note that the YANG data model addressing pluggable modules will be provided at interface (A), i.e., the management interface of the device. In general the HOST can be any devices (packet, OTN etc.) But in specific this draft addresses this when the Host is a packet device.</t>
      <t>B. The CMIS <xref target="CMIS"/> defines the communication interface between host devices and optical modules.</t>
      <t>C. The data flow between the optical pluggable module and the packet data function through this interface. This is electrical interface between optical pluggable module and the host. <xref target="building-blocks"/> will discuss this in more details.</t>
      <t>D. Optical fiber connecting the optical devices to optical pluggable modules. This carries the flow of photonic signal from the optical device to the optical pluggable modules. <xref target="building-blocks"/> will discuss this in more details.</t>
      <t>The model presented in <xref target="data-model"/> consolidates properties of optical pluggable module on interfaces (D) and (C) in <xref target="_figure-details-packet-optical-device"/> where interface (D) provides the photonic/optical attributes and interface (C) provides the host/electrical attributes.</t>
      <figure anchor="_figure-details-packet-optical-device">
        <name>Packet device with optical pluggable modules</name>
        <artwork><![CDATA[
                  |---------------|
                  |   P-PNC(s),   |
                  |   O-PNC(s),   |
                  |   MDSC        |
                  |---------------|
                          ^
                          |  (A)
      +-------------------|-------------------+
      |            |---------------|          |
      |            |Host Management|          |
      |            |---------------|          |
      |                   |                   |  Packet Device
      |                   V                   |  Vendor X
      |        |---------------------|        |  (i.e, Host)
      |        v                     v        |
      |  |-----------|          |----------|  |
      |  | Packet    |          | optical  |  |
      |  | Function  |..........| Plug     |  |
      |  | Data      |          | Data     |  |
      |  |-----------|          |----------|  |
      |        .                      .       |
      |        .                      . (B)   |
      |        .                      .       |
      |  |--------------|   (C)   |------------------|  (D)
      |  |Packet Device |<------->| optical Plug #1  |=======
      |  |Function      |<---|    | Vendor X         |
      |  |--------------|    |    |------------------|
      |                      |                |
      |                      |    |------------------|
      |                      |--->| optical Plug #2  |=======
      |                           | Vendor Y         |
      |                           |------------------|
      |                                       |
      +---------------------------------------+

  Legend
    (A) Packet device management interfaces
              (e.g., YANG, NETCONF, gNMI, etc.)
    (B) CMIS interface between Optical pluggable module and Host
    (C) Host side of coherent optical pluggable module (towards Host)
    (D) Media side of coherent optical pluggable module
              (towards Optical/Photonic network)

]]></artwork>
      </figure>
    </section>
    <section anchor="building-blocks">
      <name>Optical Module Functional Building Blocks</name>
      <t>The functional building blocks of the optical modules of <xref target="_figure-details-packet-optical-device"/> are shown in <xref target="_figure-optical-pluggable-building-blocks"/> and has three major functions:</t>
      <ul spacing="normal">
        <li>
          <t>Media side: This functional block represents all Photonic/Optical attributes of the optical modules (interface (D) in <xref target="_figure-details-packet-optical-device"/>). These attributes define the characteristics of the optical and photonic properties such as spectrum, polarization, dispersion etc., which do not directly affect the behavior of the host packet device. Note that the goal of this draft is to identify optical module capabilities, configuration, states, and telemetry data attributes from existing IETF standards and incorporates input from other industry forums and standards, such as ITU-T, OpenConfig, OIF and ONF TAPI and then perform the gap analysis to compare optical module attributes with current IETF drafts, identifying any modeling gaps. Eventually based on the identified gaps, the draft proposes solutions to address missing attributes, such as augmenting or updating existing IETF YANG models. Note that IETF terminology are given precedence wherever possible. In case there is a duplication of an attribute, this draft may describe how the attribute is named in the related document. Only if no attribute exists in IETF RFCs or IETF WG drafts, new attributes shall be introduced if they are needed.</t>
        </li>
        <li>
          <t>Host side: This functional block represents all Host/Electrical attributes of the coherent pluggables (interface (C) in <xref target="_figure-details-packet-optical-device"/>). These attributes defines the characteristics of interconnect between the host and the optical pluggable, such as lane count, FEC etc., which both the optical pluggable and the packet host should understand and act upon. Note that the mapping between host and media might be one to many, i.e., a host logical channel might map to one or more media logical channel.</t>
        </li>
        <li>
          <t>Equipment attributes: These attributes represent all physical and functional aspects of the optical pluggable module such as plug type, software version, thermal characteristics, power consumption etc.</t>
        </li>
      </ul>
      <figure anchor="_figure-optical-pluggable-building-blocks">
        <name>Optical pluggable module Building Blocks</name>
        <artwork><![CDATA[
  optical Pluggable Module
 |--------------------------------------------------------------|
 |                                                              |
 |  |--------------------------------------------------------|  |
 |  |                        Equipment                       |  |
 |  |--------------------------------------------------------|  |
 |                                                              |
 |           Host side                      Media side          |
 | |---------------------------|  |---------------------------| |
 | |                           |  |                           | |
 | | |---------|  |---------|  |  | |---------|  |---------|  | |(Tx)
-----| Elec.   |  | Host    |  |  | | Media   |  | Optical | ----->
-----| Channels|--| Logical |-------| Logical |--| Channel | <-----
-----|         |  | Channels|  |  | | Channels|  | (OTSi)  |  | |(Rx)
 | | |---------|  |---------|  |  | |---------|  |---------|  | |
 | |                           |  |                           | |
 | |---------------------------|  |---------------------------| |
 |                                                              |
 |--------------------------------------------------------------|

]]></artwork>
      </figure>
      <t>The following sections are describing the details of optical pluggable module functional blocks in more details.</t>
      <section anchor="optical-channelotsi">
        <name>Optical Channel/OTSi</name>
        <t>The media side of the optical module is further divided into two functional blocks; Optical Channel/OTSi and Media Logical Channels. The characteristics of the Optical channel/OTSi are (See section 2.3.1 of <xref target="I-D.ietf-ccamp-optical-impairment-topology-yang"/> and also section 3.2.4 <xref target="G.959.1"/>).</t>
        <ul spacing="normal">
          <li>
            <t>This is the module interfaces facing the optical network.</t>
          </li>
          <li>
            <t>Represents the digital wrapper that transports services over a wavelength</t>
          </li>
          <li>
            <t>Represents the wavelength and the optical aspects of the signal modulated onto baud-rate, bit-rate, modulation scheme, frequency, tx-power, etc.</t>
          </li>
          <li>
            <t>Optical signal FEC termination/source, FEC characteristic information – configuration, if possible, Pre-FEC BER, Post-FEC BER, fail/degrade thresholds, raw corrected/uncorrected counts</t>
          </li>
          <li>
            <t>Provides configuration of the signal and monitoring capabilities</t>
          </li>
          <li>
            <t>Provides monitoring capabilities in the Tx (toward fiber/medium) and Rx (from fiber/medium) directions, Total optical power, optical channel power, optical statistics</t>
          </li>
        </ul>
      </section>
      <section anchor="media-logical-channels">
        <name>Media Logical Channels</name>
        <t>The characteristics of the Media Logical Channels are:</t>
        <ul spacing="normal">
          <li>
            <t>Logical representation of the hierarchical view of the digital framing layers used for transport of services over the wavelength</t>
          </li>
          <li>
            <t>Provides access to information for configuration and monitoring characteristics. For example, for 400ZR/OpenZR+ <xref target="OIF-400ZR"/>, it represents the 400ZR frame structure in which Ethernet services are mapped and for an OTN encapsulated signal, it represents the OTU, ODU, OPU frame structures, perhaps with a multi-layer multiplex structure, in which Ethernet and other types of services are mapped</t>
          </li>
        </ul>
      </section>
      <section anchor="host-logical-channels">
        <name>Host Logical Channels</name>
        <t>The host side of the optical module is further divided into two functional blocks; Host Logical Channels and Electrical channels. The characteristics of the Host Logical Channels are:</t>
        <ul spacing="normal">
          <li>
            <t>Logical representation of the hierarchical view of the digital framing layers for services carried on the electrical lanes of the device</t>
          </li>
          <li>
            <t>Provides information for configuration and monitoring characteristics of each service</t>
          </li>
          <li>
            <t>Represents each service carried over the media logical channel and optical interface/wavelength, e.g., 25GE, 50GE, 100GE, 200GE, 400GE, OTU4, OTUCn etc.</t>
          </li>
        </ul>
      </section>
      <section anchor="electrical-channels">
        <name>Electrical Channels</name>
        <t>The characteristics of the Electrical Channels are:</t>
        <t>Note that the purpose of this section is to clarify the role of electrical channel in the optical module. This purpose of this draft is not to define the data model of the electrical channels.</t>
        <ul spacing="normal">
          <li>
            <t>The host side lanes of the device forming the physical interface to the host platform data path device(s)</t>
          </li>
          <li>
            <t>Lanes grouped to support the type/format and bandwidth of the signal used for a service</t>
          </li>
          <li>
            <t>Provides information for configuration and monitoring characteristics of the signal for a service in the electrical domain, e.g., Interface-format, FEC, alarming thresholds, etc.</t>
          </li>
          <li>
            <t>Provides monitoring capabilities in the Tx (toward fiber) and Rx (from the fiber).</t>
          </li>
        </ul>
      </section>
      <section anchor="equipment">
        <name>Equipment</name>
        <t>The "Equipment functional block" in <xref target="_figure-optical-pluggable-building-blocks"/> represents the pluggable module itself and has the following characteristics:</t>
        <ul spacing="normal">
          <li>
            <t>Provides manufacturer identification information for the device</t>
          </li>
          <li>
            <t>Advertises capabilities of the device including capabilities for the host/client side and the media/line side</t>
          </li>
          <li>
            <t>Provides monitoring capabilities of physical characteristics and health of the device, e.g., temperature, voltage, optical transmitter/receiver characteristics</t>
          </li>
          <li>
            <t>Provides for configuration where applicable – e.g., of device environmental thresholds</t>
          </li>
          <li>
            <t>Supports device level capabilities such as firmware installation, restarts, etc.</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="data-model">
      <name>Optical modules Data Modeling</name>
      <t>[Editor's notes: As part of Gap analysis, YANG reference/YANG code might be added to the data modeling section/subsections and that the current content shall be considered as placeholder for the model.]</t>
      <t>The data modeling of each functional blocks provides attributes in following areas:</t>
      <ul spacing="normal">
        <li>
          <t><xref target="plug-capabilities-attributes"/>: optical module capability attributes (i.e., supported-modes)</t>
        </li>
        <li>
          <t><xref target="plug-config-attribute"/>: optical module configuration attributes</t>
        </li>
        <li>
          <t><xref target="plug-pm-definition"/>: optical module performance monitoring data (including State data)</t>
        </li>
        <li>
          <t><xref target="plug-threshold-definition"/>: optical module threshold definition</t>
        </li>
        <li>
          <t><xref target="plug-alarm-definition"/>: optical module alarm notifications</t>
        </li>
        <li>
          <t><xref target="plug-vendor-specific-attributes"/>: Support of Opaque Attributes</t>
        </li>
      </ul>
      <section anchor="plug-capabilities-attributes">
        <name>optical module Capability Attributes (aka, Supported-Modes)</name>
        <t>Coherent optical modules have revolutionized optical networking by offering a powerful combination of high performance, flexibility, and ease of deployment. These modules support a broad range of capabilities, making them both efficient and versatile. Their extensive functional capabilities further enhance their effectiveness in diverse networking environments.</t>
        <t>From a data modeling perspective, a set of attributes is grouped together and represented by a single identifier known as the "Operational Mode." In essence, each operational mode encapsulates a combination of properties, limitations and capabilities, such as modulation type, bit rate, baud rate, chromatic dispersion, polarization, FEC, and more. Some of these attributes limit value ranges (e.g., minimum and maximum). A optical module can support multiple operational modes, each of which can be defined by one of the following methods.</t>
        <t>Note that this current draft adheres to the definitions provided in draft <xref target="I-D.ietf-ccamp-optical-impairment-topology-yang"/>. See Section 2.6 of draft <xref target="I-D.ietf-ccamp-optical-impairment-topology-yang"/> for:</t>
        <ul spacing="normal">
          <li>
            <t>Standard Mode: This mode pertains to optical specifications developed by standards development organizations (SDOs), such as the ITU-T recommendation <xref target="G.698.2"/>.</t>
          </li>
          <li>
            <t>Organizational Mode: In this mode, optical interface specifications are defined by operators, industry forums (e.g., Optical Internetworking Forum (OIF) or OpenConfig), or equipment vendors. This allows for the utilization of optical module capabilities that extend beyond existing standards.</t>
          </li>
          <li>
            <t>Explicit Mode: This mode enables the explicit encoding of any subset of parameters (e.g., FEC type, modulation type) to facilitate interoperability checks by a controller entity through means not covered within this draft.</t>
          </li>
        </ul>
        <t>For more detailed information, please refer to draft <xref target="I-D.ietf-ccamp-optical-impairment-topology-yang"/>.</t>
      </section>
      <section anchor="plug-config-attribute">
        <name>optical module Configurations Attributes</name>
        <t>Referring to <xref target="_figure-plug-config"/>, optical modules support a set of read-write attributes which are configurable. Example of such configuration attributes are output power, central frequency and operational-mode. Note that as discussed in <xref target="plug-capabilities-attributes"/>, since optical modules may support multiple operational-modes, as part of these configuration attributes, operator should configure which of these operational-mode is desired and should be functional.</t>
        <figure anchor="_figure-plug-config">
          <name>Data structure for optical module Configuration Attributes</name>
          <artwork><![CDATA[
 |-----------------------------------------------------------------|
 |  optical-channel  // OTSi channels                              |
 |      configuration // list of R/W plug configuration attributes |
 |           config-attribute-1                                    |
 |           config-attribute-2                                    |
 |           .....                                                 |
 |           config-attribute-m                                    |
 |-----------------------------------------------------------------|

]]></artwork>
        </figure>
      </section>
      <section anchor="plug-pm-definition">
        <name>optical optical module Performance Monitoring Data</name>
        <t><xref target="_figure-plug-pm"/> shows the list of optical module Performance Monitoring (PM) and state data, which are critical components in optical networks, enabling network engineers to ensure optimal performance, identify issues, and maintain network reliability. Operators monitor a range of attributes on both the optical/photonic and electrical sides of optical modules, including channel input power, channel output power, central frequency, current Optical Signal-to-Noise Ratio (OSNR), Bit Error Rate (BER), chromatic dispersion, laser temperature, link status, and more. These parameters directly impact the quality and integrity of the transmitted data across both optical and electrical domains.</t>
        <figure anchor="_figure-plug-pm">
          <name>Data structure for optical module PM Attributes</name>
          <artwork><![CDATA[
 |-----------------------------------------------------------------|
 |  optical-channel  // OTSi channels                              |
 |      pm and states  // list of R/O pm and state attributes      |
 |                     // Note-1: Each pm-attribute might have     |
 |                     //         threshold definitions            |
 |                     // Note-2: For each monitored attributes,   |
 |                     //         one SCTG profile can be assigned |
 |           monitored-attribute-1                                 |
 |           monitored-attribute-2                                 |
 |           .....                                                 |
 |           monitored-attribute-p                                 |
 |-----------------------------------------------------------------|

]]></artwork>
        </figure>
        <t>As coherent optical technology continues to gain traction, PM has evolved to include more advanced techniques, such as monitoring the quality of modulated signals and detecting impairments that could degrade performance over long distances. By leveraging these PM capabilities, engineers can ensure that the optical layer operates effectively, optimize the utilization of optical resources, and maintain high levels of service continuity and performance throughout the network.</t>
        <t>It is important to note that the "monitored attributes" encompass parameters from the media side, host side, and hardware components of optical modules.</t>
        <t>Performance Monitoring (PM) data is generated for various "monitored attributes" by optical modules, representing a range of real-time metrics, including current, average, minimum, and maximum values, as well as counters and states. The PM data can be categorized as follows:</t>
        <ul spacing="normal">
          <li>
            <t>Basic Monitoring PM data: The analogue values which provide the "current values" of a "monitored attributes" such as laser temperature, eSNR (Effective Signal-to-Noise Ratio) at media input, eSNR at host input, laser frequency error, and more.</t>
          </li>
          <li>
            <t>Advanced Monitoring PM data: The analogue values which provide the "current, average, minimum, and maximum values" of "monitored attributes" such as transmit signal power, Bit Error Rate (BER), chromatic dispersion, etc.</t>
          </li>
          <li>
            <t>Up Counters: The discrete counter values of "monitored attributes" that only increment, such as Bit Error Count, FEC (Forward Error Correction) Uncorrected Errors, Loss of Signal (LOS) count, Loss of Frame (LOF) count, and others.</t>
          </li>
          <li>
            <t>Up/Down Counters: The discrete counter values of "monitored attributes" that can both incremented and decremented.</t>
          </li>
          <li>
            <t>Operational/Admin States: Represents the states of "monitored attributes" such as link up/down state, alarm state, laser on/off state, Automatic Power Control (APC) status, and more.</t>
          </li>
        </ul>
        <t>For "Up Counters" there might be two approaches:</t>
        <ul spacing="normal">
          <li>
            <t>Continuous Increment: The counter value continuously increments without resetting upon read.</t>
          </li>
          <li>
            <t>Reset on Read: The counter value resets either on read or based on a predefined condition.</t>
          </li>
        </ul>
        <t>For "advanced monitoring performance management (PM) data", where current, average, minimum, and maximum values are provided by the optical module, a "windowing mechanism" is essential. Currently, this mechanism is implemented by the host platform, not the module itself. For instance, the host platform utilizes the windowing mechanism to segment the PM data collected by the optical module. Within each window, the host calculates the minimum, maximum, and average values of the PM data, enabling a granular and time-specific analysis of the module's performance.</t>
        <t>A variety of performance monitoring metrics, including minimum, maximum, average, and instantaneous values, can be collected. These metrics offer a comprehensive view of performance fluctuations, allowing for precise monitoring and quicker response times to anomalies. Minimum and maximum values help identify the extremes of performance, while average values give a sense of typical performance levels. Instantaneous values, on the other hand, provide real-time insights, which are crucial for immediate issue detection and resolution. This multi-faceted approach ensures that network performance is consistently monitored and maintained at high standards.</t>
        <t><xref target="plug-threshold-definition"/> will discuss the collection type and how they are related to the above-mentioned PM data. It also covers the optical modules support for threshold crossing alerts (TCA) for all or a subset of monitored attributes.</t>
      </section>
      <section anchor="plug-threshold-definition">
        <name>optical module Threshold Definition</name>
        <t>As indicated in <xref target="plug-pm-definition"/>, optical modules are capable of providing the threshold crossing alert (TCA) for all or subset of "monitored attributes". In this situation, the optical module raises an alert which informs the host about operationally undesired situations or about critical threshold crossings of monitored attributes. The optical module raises an alert by setting an associated Flag on module memory-map that represents the alert.</t>
        <t>As mentioned previously, the TCA might be supported for a subset of optical module monitored attributes. Since it is possible that the optical module has different capabilities to raise threshold for different monitored attributes, to provide a general solution for threshold definition on optical module monitored attributes, this draft introduces the concept of "Supported Collection and Threshold Group (SCTG)" shown in <xref target="_figure-plug-threshold-definition"/> which defines the configurable threshold values and collection types (i.e., the collection of current value, average value, min/max value are supported).</t>
        <t>In summary, as outlined in <xref target="plug-pm-definition"/> and <xref target="plug-threshold-definition"/>, each optical module PM/State attribute can have multiple Performance Monitoring (PM) values, such as current, average, minimum, and maximum, as well as multiple threshold levels, including warning, minor, major, and critical. To streamline this representation in a Google Sheet, each optical module PM/State attribute will be associated with a corresponding SCTG-Type reference.</t>
        <t>For example, consider the optical module PM attribute "channel-input-power." Tthe optical module collects PM values for current, average, minimum, and maximum, while also supporting the configuration of threshold values for warning, minor, major, and critical levels. As illustrated in <xref target="_figure-plug-threshold-definition"/>, the PM attribute "channel-input-power" is linked to "SCTG-Type-1" to simplify its representation in Google Sheet.</t>
        <figure anchor="_figure-plug-threshold-definition">
          <name>optical module Collection and Threshold Group Definition</name>
          <artwork><![CDATA[
         Supported-Collection-and-Threshold-Group (SCTG)
 |----------------------------------------------------------------|
 |   SCTG-Type-1:                                                 |
 |     Collection: current, average, min, max                     |
 |     Configured Threshold: warning, minor, major, critical      |
 |                                                                |
 |   SCTG-Type-2:                                                 |
 |     Collection: current                                        |
 |     Configured Threshold: warning, minor, major, critical      |
 |                                                                |
 |   SCTG-Type-3:                                                 |
 |     Collection: current, average, min, max                     |
 |   ...                                                          |
 |   SCTG-Type-n:                                                 |
 |----------------------------------------------------------------|
    // Note:
    // These are just a few examples. More SCTG can be defined
]]></artwork>
        </figure>
        <t>To define the warning, minor, major, critical threshold values for a optical module monitored attribute, operator should set upper and lower limits that delineate acceptable performance ranges. This ensures that any deviations can be quickly identified and addressed. A rolling window between min-time and max-time should be employed to dynamically adjust these thresholds based on recent data trends, providing a more accurate reflection of current network conditions. By continuously updating the thresholds, network performance can be maintained within optimal parameters, reducing the risk of undetected issues.</t>
        <t>Note that sometimes these thresholds are configurable and sometime they are hard-coded. It is also possible that a vendor can support a sub-set and super-set of monitored attributes (for super-set they need to augment the yang model).</t>
      </section>
      <section anchor="plug-alarm-definition">
        <name>optical module Alarm Notifications</name>
        <t>[Editor's note: To be added in a later release.]</t>
        <t>The optical modules might generate various alarm notifications due to the various reasons.</t>
      </section>
    </section>
    <section anchor="google-sheet">
      <name>Complete list of optical modules Attributes From Google Sheet</name>
      <t>This draft was initiated to evaluate the completeness of existing IETF models related to optical modules by incorporating data models and insights from other industry forums and standards bodies, including ITU-T, OpenConfig, OIF, and ONF TAPI. In particular, the following documents are examined:</t>
      <ul spacing="normal">
        <li>
          <t>IETF Common YANG Data Types for Layer 0 Networks <xref target="I-D.ietf-ccamp-rfc9093-bis"/></t>
        </li>
        <li>
          <t>IETF YANG  data model to manage configurable DWDM optical interfaces <xref target="I-D.ietf-ccamp-dwdm-if-param-yang"/></t>
        </li>
        <li>
          <t>IETF YANG Data Model for Optical Impairment-aware Topology  <xref target="I-D.ietf-ccamp-optical-impairment-topology-yang"/></t>
        </li>
        <li>
          <t>IETF YANG Data Model for WDM Tunnels <xref target="I-D.ietf-ccamp-wdm-tunnel-yang"/></t>
        </li>
        <li>
          <t>IETF YANG Data Models for requesting Path Computation in WDM Optical Networks <xref target="I-D.ietf-ccamp-optical-path-computation-yang"/></t>
        </li>
        <li>
          <t>Implementation Agreement 400ZR <xref target="OIF-400ZR"/></t>
        </li>
        <li>
          <t>OpenConfig system component inventory<xref target="OC-platform"/></t>
        </li>
        <li>
          <t>OpenConfig terminal device <xref target="OC-device"/></t>
        </li>
        <li>
          <t>ITU-T Multichannel DWDM applications <xref target="G.698.1"/></t>
        </li>
        <li>
          <t>ITU-T Amplified multichannel dense wavelength division multiplexing <xref target="G.698.2"/></t>
        </li>
        <li>
          <t>ITU-T Optical interfaces for coarse wavelength division multiplexing <xref target="G.695"/></t>
        </li>
        <li>
          <t>ITU-T Optical transport network physical layer interfaces <xref target="G.959.1"/></t>
        </li>
        <li>
          <t>Linux Foundation Transport API project <xref target="TAPI-2.5.0"/></t>
        </li>
      </ul>
      <t>The primary objective is to assess the properties and structures within these models that are relevant to coherent optical modules and to identify any missing elements or gaps.</t>
      <t>To support this ongoing analysis, relevant properties and structures from both IETF models and external organizations or standards bodies are being collected in Google Sheet. In <xref target="gap-analysis"/>, these properties will serve as the foundation for conducting a comprehensive gap analysis.</t>
      <t>As discussed in <xref target="plug-capabilities-attributes"/>, <xref target="plug-config-attribute"/>, and <xref target="plug-pm-definition"/>, the google sheet provides the Capabilities, Configuration, and Performance Monitoring attributes for coherent pluggable. The google sheet includes various read-only capability attributes, read-write configuration attributes, and read-only performance monitoring attributes. For a comprehensive list of these attributes, refer to the accompanying optical module Google Sheet.</t>
      <t>[Editorial Note: The reference to the external Google Sheet is used to finalize the gap content, 
once all the info are incorporated in the draft, and in any case before publication, this link shall be removed. Please also note that the content of the google sheet is very important and shall be captured in draft as a table or something else in Appendix section]</t>
      <t>You can <eref target="/Users/rrokui/Desktop/optical-pluggable-attributes-v00-GAP.xslx">download the Google sheet</eref> to see all the details.</t>
    </section>
    <section anchor="gap-analysis">
      <name>Optical Module Data Modeling Gap Analysis</name>
      <t>[Editorial Note: The “Optical Module Data Modeling Gap Analysis” section is still work in progress and the attributes listed in the 3 tables below are subject to change since some comments present in the original Google sheet have not been resolved and agreed yet]</t>
      <t>To support gap analysis of optical pluggables in packet-over-optical networks, the Google Sheet referenced in <xref target="google-sheet"/> is utilized. The attributes listed in the sheet are systematically examined to determine their applicability to optical pluggables. For applicable attributes, a cross-check is performed to verify whether they are included in existing IETF data models. Attributes not present in the IETF models are identified as gaps. Where necessary, proposals for updates or modifications to the IETF models are developed to address these gaps or misalignments.</t>
      <section anchor="gap-analysis-capabilities">
        <name>List of Missing Optical Pluggable Capability Attributes Based on Gap Analysis</name>
        <t><xref target="_figure-gap-analysis-capabilities"/> provides the missing capabilities attributes highlights important optical pluggable parameters and features that are defined by other standards development organizations (SDOs) and industry forums, but are currently absent from IETF YANG models.</t>
        <t>Note that the "Attribute Number" refers to numbering in Google Sheet.</t>
        <t>Harmonizing these attributes between SDOs, and IETF models would support the evolution of open, programmable, and interoperable optical networks.</t>
        <figure anchor="_figure-gap-analysis-capabilities">
          <name>List of Optical Pluggable Capability Attributes Based on Gap Analysis</name>
          <artwork><![CDATA[
For each Attribute Name, 
- First table displays the "Missing Capability Attributes" 
- Second table displays the "Summary Description of Missing  
  Capability Attributes"

| --------- | ------------------------------------------ | --------- |
| Attribute | Missing Capability Attributes              | source    |
| Number    |                                            |           |
| --------- | ------------------------------------------ | --------- |
| 4         | tag-id                                     | IETF      |
| 16        | Post FEC BER                               | oif       |
| 17        | pre-fec-ber                                |           |
| 18        | Target reach                               | oif/itu-t |
| 19        | Ripple                                     | oif/itu-t |
| 20        | max-bit-error-ratio                        | itu-t     |
| 22        | min-chromatic-dispersion                   | oif       |
| 36        | Polarization Rotation Speed                | oif/itu-t |
| 39        | min-tx-osnr                                | OpenConfg |
| 46        | pulse-shaping-type                         | OpenConfg |
| 53        | fec-coding                                 | OpenConfg |
| 68        | Minimum mean input power                   | itu-t     |
| 70        | Maximum mean total input power             | itu-t     |
| 71        | Maximum mean total output power            | itu-t     |
| 73        | Maximum channel power difference           | itu-t     |
| 79        | Minimum equivalent sensitivity             | itu-t     |
| 80        | Maximum reflectance of receiver            | itu-t     |
| 86        | max-laser-temperature                      | ietf      |
| 87        | grid-type                                  | OpenConfg |
|           |                                            | /tapi     |
| 88        | adjustment-granularity                     | OpenConfg |
|           |                                            | /tapi     |
| 91        | noise-figure                               | IETF/tapi |
| 92        | Maximum spectral excursion                 | itu-t     |
| 93        | Minimum side mode suppression ratio        | itu-t     |
| 95        | max-transmitter-residual-dispersion-osnr-  | itu-t     |
|           | penalty                                    |           |
| 107       | line-coding                                | itu-t     |
| 112       | max-central-wavelength-deviation           | itu-t     |
| 116       | max-duty-cycle                             | itu-t     |
| 117       | max-laser-linewidth                        | itu-t     |
| 121       | Maximum offset between the carrier and the | itu-t     |
|           | nominal central frequency                  |           |
| 123       | Maximum skew between the two polarizations | itu-t     |
| 125       | Maximum spectral power density             | itu-t     |
| 126       | Maximum TDECQ                              | itu-t     |
| 127       | Maximum I-Q offset                         | itu-t     |
| 157       | Laser frequency accuracy                   | oif       |
| 158       | Laser frequency noise                      | oif       |
| 159       | TX spectral Upper Mask & TX spectral Lower | oif       |
|           | Mask                                       |           |
| 160       | Laser RIN                                  | oif       |
| 161       | Tx clock phase noise (PN): Maximum PN mask | oif       |
|           | for low frequency PN                       |           |
| 162       | Tx clock phase noise (PN); Maximum total   | oif       |
|           | integrated RMS phase jitter between 10kHz  |           |
|           | and 10MHz                                  |           |
| 163       | Tx clock phase noise (PN)                  | oif       |
| 164       | Minimum Excess Bandwidth                   | oif       |
| 168       | Total output power with Tx disabled        | oif       |
| 169       | Total output power during wavelength       | oif       |
|           | switching                                  |           |
| 170       | Transmit output power stability            | oif       |
| 171       | Transmit output power control absolute     | oif       |
|           | accuracy                                   |           |
| 174       | Transmitter reflectance                    | oif       |
| 175       | Transmitter back reflection tolerance      | oif       |
| 176       | Transmitter polarization dependent power   | oif       |
| 177       | X-Y Skew                                   | oif       |
| 178       | DC I-Q offset (mean per polarization)      | oif       |
| 179       | I-Q instantaneous offset                   | oif       |
| 180       | Mean I-Q amplitude imbalance               | oif       |
| 181       | I-Q phase error                            | oif       |
| 182       | I-Q Skew                                   | oif       |
| 184       | Frequency offset between received carrier  | oif       |
|           | and LO                                     |           |
| 188       | Optical return loss                        | oif       |
| 195       | Tolerance to change in SOP                 | oif       |
| 196       | Optical input power transient tolerance    | oif       |
| 197       | Adjacent Channel Crosstalk OSNR Tolerance  | oif       |
|           | penalty                                    |           |
| 198       | Intra-Channel filtering penalty            | oif       |
| --------- | ------------------------------------------ | --------- |


| --------- | ------------------------------------------------------ |
| Attribute | Summary Description of                                 |
| Number    | Missing Capability Attributes                          |
| --------- | ------------------------------------------------------ |
| 4         | list of {tag-type, tag-value}                          |
| 16        | Refers to error rate measured after applying FEC       |
| 17        | Bit error rate measured before forward error           |
|           | correction decoding                                    |
| 18        | Max optical transmission distance that a coherent      |
|           | pluggable module can support                           |
| 19        | Peak-to-peak insertion loss difference within filter   |
|           | clear bandwidth of the Mux or Demux                    |
| 20        | Max acceptable bit error rate for a pluggable optical  |
|           | module                                                 |
| 22        | Min value of chromatic dispersion (CD) compensation    |
|           | range supported by an optical pluggable                |
| 36        | Max rate a coherent optical receiver can track and     |
|           | compensate for changes in polarization state of        |
|           | incoming optical signal                                |
| 39        | Min OSNR that the pluggable module's transmitter is    |
|           | capable of generating                                  |
| 46        | Digital filtering technique applied to electrical      |
|           | signal before it modulates optical carrier             |
| 53        | Forward error correction coding schema used in the     |
|           | transmission mode                                      |
| 68        | Min values of the average received power at point RS   |
| 70        | Highest allowable average power level that can be      |
|           | input into a system or component at a specified point  |
| 71        | Analogous to "Maximum mean total input power," but for |
|           | output direction                                       |
| 73        | max allowable difference in power levels between       |
|           | channels in a multi-channel optical transmission       |
| 79        | min optical power level that a receiver requires to    |
|           | decode incoming signals accurately                     |
| 80        | highest allowable level of optical reflectance from the|
|           | receiver within those components                       |
| 86        | highest laser temperature recorded or allowed for a    |
|           | laser                                                  |
| 87        | attribute that defines frequency grid used for optical |
|           | channels                                               |
| 88        | min spectrum separation between the central frequencies|
|           | of two adjacent optical channels                       |
| 91        | expressed as ratio of input SNR to output SNR.         |
|           | Quantifies how much noise a component adds to signal   |
| 92        | max acceptable difference between the nominal central  |
|           | frequency  and  signal power drops                     |
| 93        | A measure of how much the power of the main mode in a  |
|           | laser exceeds that of its side modes                   |
| 95        | An additional SNR penalty at lowest power with         |
|           | worst-case dispersion                                  |
| 107       | List of methods of encoding digital data into signal   |
|           | waveforms, ensuring proper timing and synchronization  |
| 112       | difference between the nominal central wavelength and  |
|           | the actual central wavelength                          |
| 116       | max percentage of time that a signal is in an active or|
|           | "ON" state within a given period                       |
| 117       | max allowable width of laser optical signal            |
| 121       | max allowed deviation between actual carrier frequency |
|           | of an optical signal and its nominal central frequency |
| 123       | max difference in timing or phase between signals      |
|           | transmitted on different polarizations                 |
| 125       | max allowable optical power per unit frequency or      |
|           | wavelength interval in a system                        |
| 126       | Transmitter Dispersion and Eye Closure Quaternary, a   |
|           | metric to evaluate performance of optical transmitters |
| 127       | max I-Q offset difference between in-phase (I) and     |
|           | quadrature (Q) of a modulated signal                   |
| 157       | max deviation of a laser's actual output frequency from|
|           | its nominal channel frequency                          |
| 158       | Describes the random fluctuations in the laser's output|
|           | frequency over time                                    |
| 159       | max allowable optical power limits at specific         |
|           | frequency offsets from the carrier wavelength          |
| 160       | Laser Relative Intensity Noise quantifies random       |
|           | fluctuations in laser’s optical power output           |
| 161       | refers to random fluctuations in the timing of the     |
|           | transmitted signal's clock                             |
| 162       | refers to the random fluctuations in timing of the     |
|           | transmitted signal's clock                             |
| 163       | refers to the random fluctuations in the timing of the |
|           | transmitted signal's clock                             |
| 164       | min spectral width beyond theoretical minimum required |
|           | by the signal's data rate                              |
| 168       | amount of optical power emitted by pluggable when      |
|           | transmitter is intentionally turned off                |
| 169       | optical power level of  pluggable transmitter during   |
|           | brief period when it is changing its output wavelength |
| 170       | ability of a transmitter to maintain a consistent      |
|           | optical output power level over time                   |
| 171       | how closely actual output power matches the desired or |
|           | configured output power level                          |
| 174       | amount of optical power reflected back from the        |
|           | transmitter into the optical fiber                     |
| 175       | Max amount of optical power reflected back towards     |
|           | transmitter without performance degradation            |
| 176       | variation in optical power emitted by a transmitter    |
|           | depending on the polarization state of the light       |
| 177       | timing skew between the X and Y polarization components|
|           | of an optical signal in a coherent system              |
| 178       | average DC offset In-phase (I) and Quadrature (Q)      |
|           | components of received signal for each polarization    |
| 179       | time-varying or dynamic offset between In-phase (I)    |
|           | and Quadrature (Q) components of received signal       |
| 180       | average difference in amplitude between In-phase (I)   |
|           | and Quadrature (Q) components of the received signal   |
| 181       | deviation from 90-degree phase relationship between    |
|           | In-phase (I) and Quadrature (Q) of received signal     |
| 182       | time delay or misalignment between In-phase (I) and    |
|           | Quadrature (Q) components of a signal                  |
| 184       | difference between frequency of incoming optical signal|
|           | and the local oscillator (LO) frequency                |
| 188       | total reflected light caused by discontinuities in an  |
|           | optical path, expressed as ratio of incident to        |
|           | reflected power                                        |
| 195       | ability of an optical receiver to maintain acceptable  |
|           | performance despite variations in State of Polarization|
|           | (SOP)                                                  |
| 196       | ability of an optical receiver to maintain acceptable  |
|           | performance when subjected to sudden changes in        |
|           | received optical power level                           |
| 197       | increase in required OSNR to maintain a specific BER   |
|           | due to interference caused by neighboring optical      |
|           | channels                                               |
| 198       | degradation in signal quality, measured as an increase |
|           | in required OSNR to achieve a target BER               |
| --------- | ------------------------------------------------------ |

Note: The "Attribute Number" refers to numbering in Google Sheet

]]></artwork>
        </figure>
      </section>
      <section anchor="gap-analysis-config">
        <name>List of Missing Optical Pluggable Configuration Attributes Based on Gap Analysis</name>
        <t><xref target="_figure-gap-analysis-Configuration"/> identifies configuration attributes for optical pluggables defined by other standards development organizations (SDOs) and industry forums which may not be fully represented in IETF YANG models.</t>
        <t>Note that the "Attribute Number" refers to numbering in Google Sheet.</t>
        <figure anchor="_figure-gap-analysis-Configuration">
          <name>List of Optical Pluggable Configuration Attributes Based on Gap Analysis</name>
          <artwork><![CDATA[
For each Attribute Name, 
- First table displays the "Missing Configuration Attributes" 
- Second table displays the "Summary Description of Missing  
  Configuration Attributes"
  
| --------- | ------------------------------------------ | --------- |
| Attribute | Missing Configuration Attributes           | source    |
| Number    |                                            |           |
| --------- | ------------------------------------------ | --------- |
| 206       | admin-state                                |           |
| 210       | line-coding-bit-rate                       | tapi      |
| --------- | ------------------------------------------ | --------- |

| --------- | ------------------------------------------------------ |
| Attribute | Summary Description of                                 |
| Number    | Missing Configuration Attributes                       |
| --------- | ------------------------------------------------------ |
| 206       | This is pluggable admin state.                         |
| 210       | Identifies the line coding e.g. NRZ-10G and is drawn   |
|           | from G.698.2.                                          |
| --------- | ------------------------------------------------------ |

Note: The "Attribute Number" refers to numbering in Google Sheet

]]></artwork>
        </figure>
      </section>
      <section anchor="gap-analysis-pm">
        <name>List of Missing Optical Pluggable PM/States Attributes Based on Gap Analysis</name>
        <t><xref target="_figure-gap-analysis-pm"/> highlights missing Performance monitoring and States attributes for optical pluggables. Note that the "Attribute Number" refers to numbering in Google Sheet.</t>
        <figure anchor="_figure-gap-analysis-pm">
          <name>List of Optical Pluggable PM State Attributes Based on Gap Analysis</name>
          <artwork><![CDATA[
For each Attribute Name, 
- First table displays the "Missing PM/States Attributes" 
- Second table displays the "Summary Description of Missing  
  PM/States Attributes"

| --------- | ------------------------------------------ | --------- |
| Attribute | Missing PM/States Attributes               | Source    |
| Number    |                                            |           |
| --------- | ------------------------------------------ | --------- |
| 216       | operational-state                          |           |
| 218       | central-frequency-offset                   | OpenConfg/|
|           |                                            | oif/t-api |
| 222       | chromatic-dispersion                       | OpenConfg/|
|           |                                            | oif/tapi  |
| 233       | supply-voltage                             | OpenConfg |
| 234       | laser-bias-current                         | OpenConfg |
| 235       | max-polarization-dependent-loss            | OpenConfg |
| 237       | modulation-error-ratio                     | OpenConfg |
| 238       | fec-uncorrectable-blocks                   | OpenConfg |
| 239       | q-value                                    | OpenConfg |
| 250       | EVMmax                                     | oif       |
| 251       | EVMrms                                     | oif       |
| 252       | MER                                        | oif       |
| 253       | eSNR                                       | OpenConfg/|
|           |                                            | oif       |
| 254       | SNR Margin                                 | oif       |
| 255       | CD-high granularity, short link            | oif       |
| 256       | CD-low granularity, long link              | oif       |
| 257       | DGD                                        | oif       |
| 258       | SOPMD                                      | OpenConfg/|
|           |                                            | oif       |
| 259       | PDL                                        | oif       |
| 260       | SOP ROC                                    | OpenConfg/|
|           |                                            | oif       |
| 261       | Tx Total Power                             | oif       |
| 264       | CFO                                        | oif       |
| 265       | Modulator Bias X/I                         | OpenConfg/|
|           |                                            | oif       |
| 266       | Modulator Bias X/Q                         | OpenConfg/|
|           |                                            | oif       |
| 267       | Modulator Bias Y/I                         | OpenConfg/|
|           |                                            | oif       |
| 268       | Modulator Bias Y/Q                         | OpenConfg/|
|           |                                            | oif       |
| 269       | Modulator Bias X Phase                     | OpenConfg/|
|           |                                            | oif       |
| 270       | Modulator Bias Y Phase                     | OpenConfg/|
|           |                                            | oif       |
| 271       | self-phase-modulation (SPM)                | itu-t     |
| 272       | cross-phase-modulation (XPM)               | itu-t     |
| 273       | Frequency offset between received carrier  | oif       |
|           | and LO                                     |           |
| 274       | total-channel-output-power                 | IETF      |
| --------- | ------------------------------------------ | --------- |

| --------- | ------------------------------------------------------ |
| Attribute | Summary Description of                                 |
| Number    | Missing PM/States Attributes                           |
| --------- | ------------------------------------------------------ |
| 216       | This is pluggable admin state.                         |
| 218       | Frequency difference between nominal and actual optical|
|           | carrier frequencies, causing phase rotation and        |
|           | requiring DSP compensation in coherent systems. It is  |
|           | a key parameter in OIF and T-API for channel alignment |
|           | and interoperability in DWDM networks.                 |
| 222       | Wavelength-dependent variation in light speed within an|
|           | optical fiber causing pulse broadening, expressed in   |
|           | ps/nm/km, and is a key factor limiting optical         |
|           | transmission performance as defined in ITU-T fiber     |
|           | standards                                              |
| 233       | Supply voltage to the transceiver in volts             |
| 234       | Current applied by the system to the transmit laser to |
|           | achieve the output power.                              |
| 235       | Maximum polarization-dependent-loss accumulated value, |
|           | supported by the optical channel associated to the     |
|           | associated transmission mode expressed in dB           |
| 237       | Modulation error ratio in dB with two decimal precision|
| 238       | Number of blocks or frames that were uncorrectable by  |
|           | the FEC                                                |
| 239       | Quality value (factor) in dB of a channel with two     |
|           | decimal precision.                                     |
| 250       | EVMmax (Error Vector Magnitude Mx) is a metric for     |
|           | evaluating maximum error vector magnitude in coherent  |
|           | optics, used for quality and impairment measurement in |
|           | coherent optical transceivers                          |
| 251       | Error Vector Magnitude normalized by RMS value of      |
|           | reference constellation points used to evaluate        |
|           | coherent optical signal quality                        |
| 252       | Modulation Error Ratio (MER) is a measure of how far   |
|           | received symbols deviate from their ideal constellation|
|           | position.                                              |
| 253       | Effective Signal-to-Noise Ratio, reflecting combined   |
|           | optical and electrical impairments.                    |
| 254       | The difference between the measured SNGR and the       |
|           | tolerable SNR that still allows acceptable BER and/or  |
|           | Q-factor.                                              |
| 255       | High-granularity chromatic dispersion measurement for  |
|           | short spans (media-side fiber estimate). DSP estimates |
|           | chromatic dispersion based on signal shape and         |
|           | compensation requirements.                             |
| 256       | Low-granularity chromatic dispersion measurement for   |
|           | longer spans (media-side fiber estimate). DSP estimates|
|           | chromatic dispersion based on signal shape and         |
|           | compensation requirements                              |
| 257       | Differential Group Delay - max delay between           |
|           | polarization modes. Transponder DSP measures           |
|           | Differential Group Delay as part of PMD compensation   |
| 258       | Second Order Polarization Mode Dispersion measured with|
|           | fine granularity                                       |
| 259       | Polarization Dependent Loss (affects coherent detection|
|           | DSP can estimate it dynamically                        |
| 260       | Rate of change of polarization state. Measured in      |
|           | real-time by tracking the speed of polarization state  |
|           | rotation at the Rx                                     |
| 261       | Total optical power emitted by the transmitter module, |
|           | critical for link budget and interoperability          |
| 264       | Central Frequency Offset is frequency mismatch between |
|           | transmitter and receiver oscillators causing phase     |
|           | errors and interference in coherent optical systems    |
| 265       | Bias on the in-phase (I) path of polarization X in a   |
|           | coherent optical modulator, expressed as a percentage  |
|           | with 2 decimal places, including statistical values    |
|           | (instant, avg, min, max)                               |
| 266       | Bias on the quadrature (Q) path of polarization X in a |
|           | coherent optical modulator, similarly expressed as a   |
|           | percentage with 2 decimal places, including the same   |
|           | set of statistical values (instant, avg, min, max)     |
| 267       | Bias on the in-phase (I) path of polarization Y in a   |
|           | coherent optical modulator, expressed as a percentage  |
|           | with 2 decimal places, including statistical values    |
|           | (instantaneous, average, min, max)                     |
| 268       | Bias on the quadrature (Q) path of polarization Y in a |
|           | coherent optical modulator, expressed as a percentage  |
|           | with 2 decimal places, including statistical values    |
|           | (instantaneous, average, min, max)                     |
| 269       | Bias on phase path of polarization X in a coherent     |
|           | optical modulator, expressed as a percentage with 2    |
|           | decimal places, including statistical values           |
|           | (instantaneous, average, min, max)                     |
| 270       | Bias on phase path of polarization Y in a coherent     |
|           | optical modulator, expressed as a percentage with 2    |
|           | decimal places, including statistical values           |
|           | (instantaneous, average, min, max)                     |
| 271       | A nonlinear optical effect where the phase of a light  |
|           | pulse is modulated by its own intensity due to the Kerr|
|           | effect, leading to a time-dependent phase shift and    |
|           | spectral broadening of the pulse as it propagates      |
|           | through an optical medium like a fiber                 |
| 272       | A nonlinear optical effect where the intensity of one  |
|           | light signal modulates the phase of another signal     |
|           | traveling through the same fiber, leading to inter-    |
|           | channel crosstalk and signal degradation in wavelength |
|           | division multiplexing (WDM) system                     |
| 273       | Estimated frequency offset is a key performance        |
|           | indicator that can be monitored to assess the health   |
|           | and stability of the link                              |
| 274       | The total output power of this interface               |
| --------- | ------------------------------------------------------ |

Note: The "Attribute Number" refers to numbering in Google Sheet

]]></artwork>
        </figure>
      </section>
      <section anchor="gap-syntax">
        <name>Coherent Pluggable Syntax Gaps</name>
        <t>Addressing syntax gaps in coherent pluggable attributes is crucial for achieving consistent and interoperable management across different implementations. One key issue lies in establishing a standardized naming convention. There are some naming inconsistency on existing IETF drafts <xref target="I-D.ietf-ccamp-optical-impairment-topology-yang"/>, <xref target="I-D.ietf-ccamp-rfc9093-bis"/> and <xref target="I-D.ietf-ccamp-dwdm-if-param-yang"/>.</t>
        <t><xref target="_figure-gap-syntax"/> shows a proposal for naming convention of optical pluggable attributes.  The current proposal, while illustrative, may need further refinement to ensure clarity and avoid ambiguity. Specifically, the prefixing of attributes with directions like "tx" or "rx" should be consistently applied to all relevant parameters to clearly identify the directionality of the signal. The example also shows the need to clearly define the value type associated with the attribute, such as min, max, current, or none, for a cohesive and standardized approach. Furthermore, the examples for attribute naming should be universally adopted to establish an attribute mapping that is aligned with IETF, improving the overall clarity and usability of the YANG models for managing coherent pluggables.</t>
        <figure anchor="_figure-gap-syntax">
          <name>Proposed naming convention for optical pluggable attribute names</name>
          <artwork><![CDATA[
Naming convention:
  direction [tx/rx/both/none]-
  [name of the attribute]-
  value [min / max / current / none]

Examples:
    for IETF attribute rx-channel-power-max, use
      rx-channel-power-max (no change)

    for ITU-T attribute "Min (residual) chromatic dispersion", use
       residual-chromatic-dispersion-min

    for IETF attribute "max-central-frequency", use
      central-frequency-max

    for IETF attribute "channel-output-power", use
       tx-channel-power
]]></artwork>
        </figure>
      </section>
      <section anchor="gap-analysis-next-steps">
        <name>Next Steps on Optical Module Data Modeling Gap Analysis</name>
        <t>Based on the results of the gap analysis, the next step will be to incorporate the identified pluggable attributes using one of the proposed approaches. It is important to note that this step represents the final phase of this draft, and its details will be provided in the next version of this draft.</t>
        <ul spacing="normal">
          <li>
            <t>Augmentation of existing IETF YANG data model (e.g. augmentation of draft <xref target="I-D.ietf-ccamp-optical-impairment-topology-yang"/>)</t>
          </li>
          <li>
            <t>Extend the content of an existing IETF YANG model via "bis/update"</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="plug-lcm">
      <name>Optical pluggable modules Lifecycle Management</name>
      <t>[Editorial Note: it is under review.
It was agreed that this section is important. Having said that, there are a few potential solution to address this topic:</t>
      <ul spacing="normal">
        <li>
          <t>Keep it is this draft</t>
        </li>
        <li>
          <t>Talk to author of use-case draft to be included in that draft https://datatracker.ietf.org/doc/draft-ietf-ccamp-actn-poi-pluggable-usecases-gaps/</t>
        </li>
        <li>
          <t>Move it to other IETF draft]</t>
        </li>
      </ul>
      <t>This section discusses the complete lifecycle of an optical pluggable module as shown in <xref target="_figure-overview-lifecycle-pluggable"/>. It includes discussion on the pre-purchase evaluation of pluggable modules through installation to the operation of a pluggable module in a live network.</t>
      <t>Most of this lifecycle discussion applies to a majority of equipment types. Where the pluggable module is special, this is highlighted.</t>
      <t>The figure below provides a high level flow. In a real environment, all stages will be running in parallel for various plug versions etc. and there may be feedback from any stage to a previous stage. For example, the research, evaluation and planning exercises are ongoing activities that continue as the network grows and changes and as new pluggable module type &amp; versions are introduced by vendors and insight from deployment may feed back to the evaluation stage.</t>
      <t>Throughout the lifecycle specific use cases and scenarios will be considered and applied. These will be developed during the early stages and applied in service design.</t>
      <t>Note: The stages and the terminology used are not intended to reflect any specific operational practice. They are intended to be neutral with respect to any existing operator's processes, aligning with the essence of the processes.</t>
      <figure anchor="_figure-overview-lifecycle-pluggable">
        <name>Lifecycle of a optical pluggable module</name>
        <artwork><![CDATA[
  Market research                   \
       |                            |
       v                            |
  Testing of pluggable module samples      | Refer to
       |                            | Section 9.1
       v                            |
  Trials & PoCs                     |
       |                            |
       v                            |
  Approve pluggable module type     /
       |                   ---------
       v                            \
  Service demand Analysis           |
       |                            |
       v                            | Refer to
  Network planning                  | Section 9.2
       |                            |
       v                            |
  Service type realization analysis |
       |                            |
       v                            |
  Purchase pluggable modules        /
       |                   ---------
       v                            \
  Optical infrastructure creation   |
       |                            |
       v                            |
  Service demand received           | Refer to
       |                            | Section 9.3
       v                            |
  Design service                    |
       |                            |
       v                            |
  Validate optical design           /
       |                   ---------
       v                            \
  Work Order (physical)             |
       |                            |
       v                            |
  Installation of pluggable modules etc.   |
       |                            | Refer to
       v                            | Section 9.4
  Service configuration             |
       |                            |
       v                            |
  Service validation & test         |
       |                            |
       v                            |
  Enable Service                    |
       |                            |
       v                            |
  Operate service                   /
]]></artwork>
      </figure>
      <t>The following sub-sections discuss the overall flow of activities and then work through the lifecycle stages in some detail.</t>
      <section anchor="approve-plug">
        <name>Approving the pluggable module type and version</name>
        <t>pluggable modules, like all equipment, are carefully chosen. A network operations company (the operator) will decide what pluggable modules to use in the network based upon research and an understanding of capabilities of the pluggable modules available in the marketplace. These capabilities will be considered against the specific applications, use cases and scenarios that are of relevance to the operator's business.</t>
        <t>It is expected that these applications, use cases and scenarios will be developed through "Market research" and as pluggable modules etc. are assessed. The use cases and scenarios will be applied extensively in later stages.</t>
        <t>The operator will acquire samples of each type &amp; version of pluggable module of interest and probably test and then trial them. They will also probably carry out "type approval" considering each type&amp;version of pluggable module for a particular set of applications (where those applications may be defined by the operator themselves or may be standardized definitions) etc. The full detail of the capability of each type &amp; version of pluggable module is relevant at all of these stages (see <xref target="express-capabilities"/>). The capabilities are expected to be expressed in a Repository.</t>
        <t>[Editorial Note: As the main goal of this draft is to identify, we might want to move a portion of this section to an annex or separate draft].</t>
      </section>
      <section anchor="planning-network">
        <name>Planning the network</name>
        <t>Specific pluggable modules (type&amp;version) will be purchased only after detailed planning of the network. To carry out this planning, full knowledge of each type&amp;version of pluggable module will be required. The planning process will account for key pluggable module properties to explore viability and compatibility. The planning will use predictions of "service demand" (e.g., using a demand matrix) and hence infrastructure need to determine purchase volumes, phasing etc.</t>
        <t>During the "Network planning" process different types of service relevant for the applications, use cases and scenarios (identified in <xref target="approve-plug"/>) will be explores and specific approaches to realizing each resulting type of service will be determined. This will result in design of specific "service realization" patterns and templates that will be used in later stages of the process. The approach to deploying each service type is defined for each operational context (application etc.)</t>
        <t>As a result of the planning exercise, numbers of each pluggable module type&amp;version required will be known and purchasing can be initiated. The purchased pluggable modules will be added to the inventory and spares holdings.</t>
      </section>
      <section anchor="service-demand">
        <name>Dealing with service demand</name>
        <t>The planning exercise leads to optical infrastructure requirements with some timetable for deployment. The "Optical infrastructure" is designed (using the patterns/templates designed in <xref target="planning-network"/>. The infrastructure will be deployed as appropriate based upon predicted and actual service demand etc.</t>
        <t>When optical "services demand" is received, perhaps to provide underlay for the packet network or driven by a specific service contract, optical network analysis is carried out to evaluate how to efficiently and effectively achieve the specific service demanded. This analysis will consider the whole optical network including the plugs and ROADMs etc. In most cases this "Service design" will use patterns/templates constructed in <xref target="planning-network"/> in conjunction with relevant capability information for the pluggable module type&amp;version.</t>
        <t>Prior to progressing further it is important to note that pluggable modules are highly valuable, and correspondingly expensive. They are deployed in a controlled fashion. There are a range of policies for deployment of pluggable modules.</t>
        <t>In some cases, at one extreme end of the range of policy choices, an operator may decide to fully populate a packet device with a selection of pluggable modules and may cable them to adjacent ROADMS. However, it is more likely that pluggable module deployment will be on a just-in-time basis, at the other end of the range of policy choices, so a pluggable module is not deployed (and hence is not cabled) until the solution to realization of the optical service has been determined.</t>
        <t>Regardless of the deployment approach, the module capability will be accounted for in the optical network analysis activity. Where modules are present, the range of installed modules constrain the possible realizations, where pluggable module modules have not been deployed all approved pluggable module modules (type&amp;version) could be considered during the analysis, although capability of the relevant packet devices to support specific pluggable module modules will also need to be considered, and this may eliminate some pluggable module modules. In addition, if there is some urgency, the availability of the type of pluggable modules to the installation engineer and/or in the local spares holding inventory may also be considered.</t>
        <t>The optical design will be "validated" in terms of "viability" and compatibility prior to proceeding. This analysis takes into account the full definitions of the pluggable module type&amp;versions of interest, where each is defined in a corresponding and referenced Repository.</t>
      </section>
      <section anchor="install-operate">
        <name>Installing and operationalizing the pluggable module</name>
        <t>Once the design is available, any necessary physical installation exercise (pluggable module installation, cabling etc.) is carried out, driven by "Work orders" that identify the type&amp;version of pluggable module to instal etc.</t>
        <t>On detection of the pluggable module instance, the control system will validate that the work order has been carried out correctly. To do this, the full type&amp;version of the pluggable module is read and compared with the intent. Where there are discrepancies, either a work order is constructed to correct the installation error after the detected pluggable module type&amp;version is evaluated for compatibility with the specific design. This evaluation is done using the Repository for that type&amp;version. It is possible that the type&amp;version may be acceptable although perhaps a little more expensive than the optimum choice etc.</t>
        <t>Once the type&amp;version of pluggable module has been confirmed, the cabling to the pluggable module will be validated and the service set up and validated. Depending upon the operator practices, there may be an extensive service test phase prior to handing over the service. The service may not be enabled immediately, but will be at some point after which the service will become operational.
From this point on, normal live service/equipment management/control will be active.</t>
        <t>Beyond this point normal operational activities such as engineering works, restoration, upgrade, fault location etc. will be carried out. Clearly, there is also the reverse sequence which includes deactivating a service and removing the plug and there are also various edits and refinements that result from changes in demand and changes in understanding of the service needs etc. These steps have not been covered at this stage as the initial list above is sufficient to the develop a deep understanding of the control of the plugs. Further stages will be added in a future version of this document.</t>
        <t>In addition, during transition towards a more automated future, there are processes related to discovery of existing network etc. In many of these processes the current state of the network is understood including the type&amp;version of each pluggable module. Some degree of understanding of capability of pluggable modules (and any other equipment) is relevant.</t>
      </section>
      <section anchor="express-capabilities">
        <name>Expressing capabilities</name>
        <t>As highlighted above, prior to installation of an optical pluggable module in a device, various research, approval, planning and design activities must be carried out (as they would be for any hardware). All of these activities will require information on the capabilities of the pluggable module.</t>
        <t>Detailed information on the capability of the pluggable module is required long before it is installed and operating. This points to the need for a model of capability (of a type of pluggable module) that is independent of the model of a running instance (and hence points to decoupling of the model of capability from the model of the operation of the pluggable module). This also suggest that discovery of capability detail from the pluggable module is not sufficient/appropriate for deployment (although it may be useful in a lab context).</t>
        <t>A machine interpretable definition/specification for the pluggable module should be available (independent of the pluggable module instance) for each pluggable module type&amp;version where the statement of type&amp;version (complete type&amp;version) used is to the degree sufficient to precisely identify the relevant (unique) definition/specification. The complete type&amp;version may include hardware type&amp;version, firmware type&amp;version and software type&amp;version details (where the firmware/software influences the operation/control of the pluggable module). This is essentially the type&amp;version used when considering spares holding and like-for-like replacement in the field.</t>
        <t>From this perspective, all that is required from a running pluggable module is to report the complete type&amp;version detail so that this can be confirmed as the right type&amp;version. The type&amp;version can be used to reference the relevant unique specification.</t>
        <t>It is important to clarify the definition of capability. In this document, the term capability means "A quality or facility that enables something to carry out some activity and/or take some role". In the context of an equipment, the term applies to its functional and physical properties.</t>
        <t>Considering a pluggable module (as for many other equipments), this would include specification of capabilities such as:</t>
        <ul spacing="normal">
          <li>
            <t>physical size, form factor and shape (the capability to fit in a particular type of location)</t>
          </li>
          <li>
            <t>connector type (the capability to physically interconnect with a compatible connector)</t>
          </li>
          <li>
            <t>bus architecture (the capability to communicate with a compatible component)</t>
          </li>
          <li>
            <t>optical termination characteristics (the functional capabilities emergent from the powered physical equipment, allowing interconnection with corresponding compatible functions)</t>
          </li>
          <li>
            <t>measurement opportunities (the functional capabilities to provide information to various control functions)</t>
          </li>
        </ul>
        <t>A capability statement may be a precise single value with no uncertainty, a range, a collection of related ranges and thresholds etc. Where some aspect has variability or is controllable, this is also required to be specified.</t>
        <t>For an equipment to be understood and used by a control system, the detailed information on capabilities must be available in machine interpretable form (to the degree necessary for any particular function to be carried out). The machine interpretable statements may be in the form of software, but preferably should be in the form of data (information) that can be readily ingested by tooling and ideally in a standardized language.</t>
        <t>Traditionally, the published statements of capability have been in somewhat ambiguous text that require interpretation and conversion into a machine interpretable form through a manual intermediate step (normally performed, with errors and performed many times for any particular device type etc.). It is suggested here that the best source of the machine interpretable data is the specifying authority (e.g., ITU-T for standard applications, the vendor for plug capabilities, an operator for non-standard applications).</t>
      </section>
    </section>
    <section anchor="appendix-a-coherent-pluggable-module-examples">
      <name>Appendix A - Coherent pluggable module Examples</name>
      <t>Within this section, we present a few use-cases showcasing the practical application of the coherent pluggable repository.
In this section, we present several use cases that demonstrate the practical application of coherent pluggable life cycle management.</t>
      <section anchor="example-1-coherent-pluggables-already-provisioned">
        <name>Example-1: Coherent Pluggables Already Provisioned</name>
        <t>The first example is illustrated in <xref target="_figure-optical-pluggable-repository-usage-1"/>. This is a simple example where the packet over optical network has been already provisioned with both optical underlay and packet overlay services. The role of SDN controller is just to discover and manage the network. In other words, the SDN controller was not involved in various aspects of service provisioning and viability. The second example will come all these aspects in more detail.</t>
        <figure anchor="_figure-optical-pluggable-repository-usage-1">
          <name>Coherent Pluggable Repository Example-1</name>
          <artwork><![CDATA[
      <------------------ L3 service-1 ------------------->
       <------------------ TE-Tunnel-1 ------------------>
         <----------------- IP link-1 ----------------->
           <------------- L0 service-1 ------------->

   |------------|        |------------------|
   | Coherent   |        |                  |
   | Pluggable  |  <-->  |  SDN Controller  |
   | Repository |        |                  |
   |------------|        |------------------|
                                ^
                                |
                                v
                      |------------------|
         port_a       |                  |
     |------| p1    |------|             |
     |  R1 ++-\     |  m1  |             |       port_b
     |------|  \    |------|          |------|  p2 |------|
                \      |              |  m3  |-----++ R2  |
                 \  |------|          |------|     |------|
                  \-|  m2  |             |
                    |------|             |
                      |                  |
                      |------------------|

  Legend:
    ----        Optical fibers
    ++ p1,p2    Coherent pluggables
    R1, R2      Packet device (i.e., Router)
    m1, m2, m3  Photonic node (ROADM)

]]></artwork>
        </figure>
        <t>In this example, all optical and IP/MPLS services had been already provisioned and deployed and the packet over optical network is fully functional.</t>
        <t>Within packet devices R1 and R2, coherent pluggables p1 and p2, are installed, interfacing through ports port_a and port_b, respectively. Both coherent pluggables are provisioned for the following operational-mode (see section 3 YANG Model of <xref target="I-D.ietf-ccamp-optical-impairment-topology-yang"/>):</t>
        <ul spacing="normal">
          <li>
            <t>[organization-identifier, operational-mode] = [OIF, 0x3E]</t>
          </li>
        </ul>
        <t>A single photonic service is established between these pluggables and an IP link is mapped to this L0 photonic service. The overlay TE-Tunnel-1 and L3 service-1 had been also provisioned. The following steps outline the details of how this network is discovered and managed by SDN controllers (note that the SDN controller was not involved in provisioning):</t>
        <ul spacing="normal">
          <li>
            <t>Packet devices (R1, R2), pluggables (p1, p2), and photonic devices (m1, m2, m3) are all discovered by SDN controllers.</t>
          </li>
          <li>
            <t>The SDN controller also discovers all underlay and overlay services, i.e., L0 service-1, IP link-1, TE-Tunnel-1 and L3 service-1.</t>
          </li>
          <li>
            <t>The SDN controller has the network inventory, including coherent pluggables p1 and p2. In particular for coherent pluggables, basic information such as pluggable type, vendor, manufacturer, serial number and software version will be provided by pluggables to SDN controller.</t>
          </li>
          <li>
            <t>The inventory of packet devices R1 and R2 contains the  configurations of pluggable attributes such as "configured operational-mode," "configured central frequency," and "configured output power".</t>
          </li>
          <li>
            <t>Specifically, using the basic information of pluggables p1 and p2 such as pluggable type, vendor, manufacturer, serial number and software version collected earlier from packet devices R1 and R2, the SDN controller can use the "Coherent Pluggable Repository," to access the entire information of both pluggables p1 and p2. This includes all supported operational-modes along with all attributes related to each supported operational-mode.</t>
          </li>
          <li>
            <t>The SDN controller can collect all PM telemetry data from the network (including pluggables).</t>
          </li>
          <li>
            <t>The SDN controller can collect all alarm notifications from the network (including pluggables).</t>
          </li>
          <li>
            <t>The SDN controller can further change, modify, optimize the network (if needed).</t>
          </li>
        </ul>
      </section>
      <section anchor="example-2-coherent-pluggables-planning">
        <name>Example-2: Coherent Pluggables Planning</name>
        <t>The example in <xref target="_figure-optical-pluggable-repository-usage-2"/> demonstrates the usage of the "Coherent Pluggable Repository" for entire lifecycle of photonic service from including service planning, viability, provisioning, collection of PM telemetry, collection of alarm notifications and optimization.</t>
        <t>Note that the packet over optical network in <xref target="_figure-optical-pluggable-repository-usage-2"/> is not created yet. The ports port_a and port_b of packet device R1 and R2 are empty and can accept coherent pluggables. In addition, ports port_a and port_b are not connected to the optical network yet, i.e., there is no connection between packet devices R1, R2 and optical network. The port_a and port_b of packet device R1 and R2 can be potentially connected to any photonic nodes m1, m2 or m3.</t>
        <t>Operator's goal is to use the SDN controller to plan, provision and monitor an optimal IP link-2 between packet devices R1 and R2. Optionally they can also provision overlay TE-Tunnel-2 and L3 service-2. To achieve this, the SDN controller should first plan an optical service-2, perform the viability to make sure this photonic service is feasible, provision it and then map it to an IP link-2.</t>
        <figure anchor="_figure-optical-pluggable-repository-usage-2">
          <name>Coherent Pluggable Repository Usage 2</name>
          <artwork><![CDATA[
      <------------------ L3 service-2 ------------------->
       <------------------ TE-Tunnel-2 ------------------>
         <----------------- IP link-2 ----------------->
           <------------- L0 service-2 ------------->

   |------------|        |------------------|
   | Coherent   |        |                  |
   | Pluggable  |  <-->  |  SDN Controller  |
   | Repository |        |                  |
   |------------|        |------------------|
                                ^
                                |
                                v
                      |------------------|
         port_a       |                  |
     |------|       |------|             |
     |  R1 .........|  m1  |             |       port_b
     |------|  .    |------|          |------|     |------|
                .     |               |  m3  |....... R2  |
                 .  |------|          |------|     |------|
                  ..|  m2  |             |
                    |------|             |
                      |                  |
                      |------------------|

  Legend:
    .....       Packet device can be potentially
                connected to photonic nodes m1, m2, m3
    R1, R2:     Packet device (i.e., Router)
    m1, m2, m3  Photonic node (ROADM)
    port_a      Router R1 port which is empty and can
                potentially populated by coherent pluggables
    port_b      Router R2 port which is empty and can
                potentially populated by coherent pluggables

]]></artwork>
        </figure>
        <t>Let's assume that the operator of this network has already purchased coherent pluggables from Vendor-X, which can support the following two operational-modes. Note that the detail information of these operational-modes including all optical and photonic attributes are already uploaded to "Coherent Pluggable Repository" by Vendor-X and OIF (see section 3 YANG Model of <xref target="I-D.ietf-ccamp-optical-impairment-topology-yang"/>):</t>
        <ul spacing="normal">
          <li>
            <t>[organization-identifier, operational-mode] = [OIF, 0x3E]</t>
          </li>
          <li>
            <t>[organization-identifier, operational-mode] = [Vendor-X, 0x22]</t>
          </li>
        </ul>
        <t>The following steps outline the details of how this network is planned, provisioned, discovered and managed by SDN controllers:</t>
        <ul spacing="normal">
          <li>
            <t>At first, there are no coherent pluggables installed in the packet devices yet. There are also no connection between packet devices and optical network.</t>
          </li>
          <li>
            <t>All packet devices (R1, R2) and photonic devices (m1, m2, m3) are managed by the SDN controller.</t>
          </li>
          <li>
            <t>As a result, the SDN controller maintains an inventory of packet and photonic devices within the network (i.e., nodes R1, R2, m1, m2, m3).</t>
          </li>
          <li>
            <t>To create the IP link-2, the SDN controller should plan and then provision the optical service-2 between port_a and port_b.</t>
          </li>
          <li>
            <t>To this end, the SDN controller should first design an optical service and then performs the viability check to make sure the optical service is viable in this network.</t>
          </li>
          <li>
            <t>So, the SDN controller calculates the best optical path from port_a to port_b.</t>
          </li>
          <li>
            <t>Next, the SDN controller performs the viability on optical route to make sure the optical path is viable in the network.</t>
          </li>
          <li>
            <t>To do viability, the SDN controller checks all attributes of all operational-modes to find the most optimal operational-mode. To do this, the SDN controller connects to the "Coherent Pluggable Repository" and access all optical and photonic attributes of all operational-modes (such as chromatic dispersion, FEC, modulation, polarization mode dispersion etc.) and performs the viability.</t>
          </li>
          <li>
            <t>After performing the optical path calculation and optical viability, the SDN controller selects the best coherent pluggable to be installed on port_a and port_b and the best optical route from port_a to port_b.</t>
          </li>
          <li>
            <t>Upon completion of the photonic viability check, the SDN controller determines which photonic devices (m1, m2, m3) should be connected to ports port_a and port_b.</t>
          </li>
          <li>
            <t>The SDN controller informs the operator of the selected coherent pluggables for ports port_a and port_b and provides instructions on how to connect them to the respective photonic devices (m1, m2, m3).</t>
          </li>
          <li>
            <t>The operator installs the designated pluggables into ports port_a and port_b and connects them to the specified photonic devices.</t>
          </li>
          <li>
            <t>The SDN controller then manages the newly installed pluggables.</t>
          </li>
          <li>
            <t>As part of the photonic viability process, the SDN controller knows the specific attributes of the pluggables, including "configured operational mode," "configured central frequency," and "configured output power."</t>
          </li>
          <li>
            <t>As a result, the SDN controller configures these configurations to each pluggable on port_a and port_b</t>
          </li>
          <li>
            <t>The SDN controller should also configure optical nodes m1, m2, m3 with attributes such as output power.</t>
          </li>
          <li>
            <t>The SDN controller provisions the optical service_1 between two coherent pluggables on port_a and port_b.</t>
          </li>
          <li>
            <t>The SDN controller also provisions the IP link-2 between packet device R1 and R2.</t>
          </li>
          <li>
            <t>The SDN controller can collect all PM telemetry data from the network (including pluggables).</t>
          </li>
          <li>
            <t>The SDN controller can collect all alarm notifications from the network (including pluggables).</t>
          </li>
          <li>
            <t>The SDN controller can further change, modify, optimize the network (if needed).</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="plug-vendor-specific-attributes">
      <name>Appendix B - Support of Opaque Attributes</name>
      <t>[Editorial Note: This section in under review. The GihHub issue #14 addresses this].</t>
      <t>In certain cases, a coherent pluggable may support attributes that are specific to a particular vendor. This draft refers to such attributes as "Opaque Attributes". Given that coherent pluggables encompass capability, configuration, and performance monitoring (PM)/state attributes, each category may contain opaque attributes. Consequently, the opaque attributes could include the following:</t>
      <ul spacing="normal">
        <li>
          <t>Read-only opaque capability attributes</t>
        </li>
        <li>
          <t>Read-write opaque configuration attributes</t>
        </li>
        <li>
          <t>Read-only opaque PM/state attributes</t>
        </li>
      </ul>
      <t>As part of coherent pluggable work, we need to address this situation where a coherent pluggable contains some proprietary capability, configuration and PM/states attributes which are needed to be configured or accessed from coherent pluggables. In this situation we need to address how opaque attributes are treated by packet device host. This allows different coherent pluggables to be used in various multi-vendor hosts in plug-and-play fashion.</t>
      <t>It is important to note that "opaque attributes" are not simply attributes that can be addressed through augmentation of the YANG data model. The reason for this is that the coherent pluggable is exposed to external systems via the host packet device northbound interface as shown in <xref target="_figure-details-packet-optical-device"/>. If the host packet device does not recognize any of these "opaque attributes". it may prevent the discovery of the coherent pluggable.</t>
      <t>When such opaque attributes exist, although the host packet device may not comprehend the semantics of these opaque attributes, it should function as a proxy and mediator between the coherent pluggable and the northbound SDN controller. Specifically, the host packet device should understand the syntax of the opaque attributes and facilitate communication between the coherent pluggable and the northbound SDN controller. To achieve plug-and-play functionality in a multi-vendor environment, the host packet device should be capable of supporting these opaque attributes. The rest of this section will provide details on how to achieve this.</t>
      <t>Another consideration is the privacy of opaque attributes, i.e., there are situations where these attributes may be commercially sensitive. In these cases, it would be reasonable to assume that the opaque attributes are in encrypted format allowing them to be passed from coherent pluggable to northbound of the host without being observed or interpreted in any way by host.</t>
      <t>To achieve this, the coherent pluggable YANG data model (the work done as part of this draft -  Google Sheet) should first be augmented with vendor proprietary capability, configuration or PM attributes. As noted above, it might be also necessary to define how these new attributes are mapped to the internal protocol between the host and the pluggable via CMIS protocol. A key consideration is that the host does not need to understand the semantics of these new attributes and may not even need to know their syntax.</t>
      <t>There are multiple solutions to this problem which will be discussed below. To demonstrate these solutions, consider the host Vendor-X and pluggable Vendor-Y in <xref target="_figure-details-packet-optical-device"/>. Let's assume:</t>
      <ul spacing="normal">
        <li>
          <t>Vendor-Y has a new read-write proprietary configuration attributes "AA" which should be configured in pluggable (in addition to well-known attributes such as central-frequency, power and operational-mode). The value of attribute AA is 100 and its memory map in coherent pluggable is 0x1100.</t>
        </li>
        <li>
          <t>In addition, consider a new read-only proprietary capability attributes "CC" supported on pluggable in range of {CC-min, CC-max}={1.1,3.3}.</t>
        </li>
      </ul>
      <section anchor="support-of-opaque-capability-attributes">
        <name>Support of Opaque Capability Attributes</name>
        <t>The coherent pluggable YANG data model is augmented with a list of new capability attributes. As demonstrated in <xref target="solution-vs-cap-attributes"/>, the YANG data model is augmented with the following information:</t>
        <ul spacing="normal">
          <li>
            <t>ID of new capability proprietary attribute</t>
          </li>
          <li>
            <t>Name of new capability proprietary attribute</t>
          </li>
          <li>
            <t>Minimum value of new attribute</t>
          </li>
          <li>
            <t>Maximum value of new attribute</t>
          </li>
        </ul>
        <t>The <xref target="solution-vs-cap-attributes"/> shows an example of new capability attribute "CC" whose min and max values are 1.1 and 3.3, respectively.</t>
        <figure anchor="solution-vs-cap-attributes">
          <name>Support of Opaque Capability Attributes</name>
          <artwork><![CDATA[
 +--ro opaque-capability-attribute-list* [cap-attribute-id]
     +--ro cap-attribute-id              uint32
     +--ro cap-attribute-name            string
     +--ro cap-min-value                 decimal64
     +--ro cap-max-value                 decimal64

<opaque-capability-attribute-list xmlns="urn:example:cc">
  <cap-attribute-id> 1 </cap-attribute-id >
  <cap-attribute-name> CC </cap-attribute-name>
  <cap-min-value> 1.1 </cap-min-value>
  <cap-max-value> 3.3 </cap-max-value>
</opaque-capability-attribute-list>
]]></artwork>
        </figure>
      </section>
      <section anchor="support-of-opaque-secret-capability-attributes">
        <name>Support of Opaque Secret Capability Attributes</name>
        <t>to be added</t>
      </section>
      <section anchor="opaque-config-solution-1">
        <name>Support of Opaque Configuration Attributes (Solution-1)</name>
        <t>To support the opaque configuration attributes, there are a few potential solutions which are discussed below. This approach is the simplest solution, as it requires no interpretation by the host platform. The coherent pluggable YANG data model is augmented with a list that directly maps the values of new configuration attributes to the corresponding memory-map locations on the pluggable device. In this solution, the memory-map locations must be known to the operator, potentially provided in the Coherent Pluggable Repository. The <xref target="solution-1"/> illustrates the coherent pluggable YANG data model, which has been augmented with the following information:</t>
        <ul spacing="normal">
          <li>
            <t>ID of new proprietary configuration attribute</t>
          </li>
          <li>
            <t>Name of new proprietary configuration attribute</t>
          </li>
          <li>
            <t>Value of new proprietary attribute</t>
          </li>
          <li>
            <t>The memory map of new proprietary attribute (which is used in CMIS communication between host and pluggable)</t>
          </li>
        </ul>
        <t>For instance, consider a scenario where the operator intends to configure a new proprietary attribute, "AA," with a value of 100, and a memory-map location on the pluggable set to 0x1100. In this process, the host platform receives the attribute "AA" as defined in <xref target="solution-1"/>. The host platform then relays this information to the coherent pluggable via the CMIS protocol, without performing any interpretation. In other words, the host platform is not required to understand the syntax or semantics of these attributes; it functions merely as a conduit, transmitting the values from the NBI to the designated memory-map locations on the pluggable.</t>
        <figure anchor="solution-1">
          <name>Solution-1 for support of opaque config attributes</name>
          <artwork><![CDATA[
 +--rw opaque-config-attribute-list* [conf-attribute-id]
     +--rw conf-attribute-id             uint32
     +--rw conf-attribute-name           string
     +--rw value                         decimal64
     +--rw memory-map                    decimal64

<opaque-config-attribute-list xmlns="urn:example:cc">
  <config-attribute-id> 1 </config-attribute-id >
  <config-attribute-name> AA </config-attribute-name>
  <value> 100 </value>
  <memory-map> 1100 </memory-map>
</opaque-config-attribute-list>
]]></artwork>
        </figure>
      </section>
      <section anchor="support-of-opaque-configuration-attributes-solution-2">
        <name>Support of Opaque Configuration Attributes (Solution-2)</name>
        <t>This approach is similar to <xref target="solution-1"/> but requires the host platform to implement lookup logic to determine the memory-map location on the pluggables. In this solution, the coherent pluggable YANG data model is augmented with the following new attributes, as shown in <xref target="solution-2"/>:</t>
        <ul spacing="normal">
          <li>
            <t>ID of new proprietary configuration attribute</t>
          </li>
          <li>
            <t>Name of new proprietary configuration attribute</t>
          </li>
          <li>
            <t>Value of new proprietary attribute</t>
          </li>
        </ul>
        <t>The operator does not have visibility into the specific memory-map locations for these attributes on the coherent pluggable device. Instead, the memory-map for each new attribute is provided in the Coherent Pluggable Repository. In this scenario, the host platform must search the pluggable Repository to locate the corresponding memory-map location for each new attribute. These values are then communicated to the pluggable via the CMIS protocol for configuration. As in <xref target="solution-1"/>, the host platform does not need to understand the syntax or semantics of the new attributes; it only needs to search the pluggable Repository to identify the memory-map locations for the new attributes.</t>
        <t>As illustrated in <xref target="solution-2"/>, the host platform receives the new attribute "AA" via its Northbound Interface (NBI), with a configuration value of 0x1100. The host then searches the coherent pluggable Repository to determine the memory-map location associated with this attribute and identifies it as 0x1100. Without interpreting the attribute's syntax or semantics, the host platform communicates this information to the coherent pluggable via the CMIS protocol. Essentially, the host platform functions as a proxy, transmitting the values from the NBI to the appropriate memory-map locations on the pluggable without needing to understand the meaning of the attributes.</t>
        <figure anchor="solution-2">
          <name>Solution-2 for support of opaque config attributes</name>
          <artwork><![CDATA[
 +--rw opaque-config-attribute-list* [conf-attribute-id]
     +--rw conf-attribute-id             uint32
     +--rw conf-attribute-name           string
     +--rw value                         decimal64
     Note: The memory-map for each new attribute is provided in
           pluggable Repository.

<opaque-config-attribute-list xmlns="urn:example:cc">
  <config-attribute-id> 1 </config-attribute-id >
  <config-attribute-name> AA </config-attribute-name>
  <value> 1100 </value>
</opaque-config-attribute-list>

]]></artwork>
        </figure>
      </section>
      <section anchor="support-of-opaque-configuration-attributes-solution-3">
        <name>Support of Opaque Configuration Attributes (Solution-3)</name>
        <t>This solution represents an advanced approach when a new opaque configuration attribute is mapped to multiple memory-map locations on a pluggable device, or when multiple such attributes are mapped to a single memory-map location on pluggable. Similar to <xref target="solution-2"/>, the mapping between these new attributes and their corresponding memory-map locations should be detailed in the pluggable Repository. For each new opaque attribute, the host platform is required to perform a lookup in the pluggable Repository to identify the relevant memory-map locations. The platform then assembles the corresponding values, which are communicated to the pluggable device via the CMIS protocol.</t>
        <t>Although this solution is included for completeness, it is not practical or desirable due to its complexity and the need for interpretation by the host software</t>
      </section>
      <section anchor="support-of-opaque-secret-configuration-attributes">
        <name>Support of Opaque Secret Configuration Attributes</name>
        <t>There are situations where opaque configuration attributes are confidential, and the vendor wishes to conceal their meanings and values. When considering the interface from the pluggable device to the host via CMIS, it is crucial that the pluggable does not expose the meaning or value of these confidential attributes. Ideally, the pluggable device would encrypt the data. Within the context of CMIS, it may be sufficient to allocate an array of register locations to convey the property values. These registers would store an encrypted data blob for read-only properties and accept an encrypted blob for writable registers. The specific value might be set or read through different register positions on each read/write, depending on the encryption technique used.</t>
        <t>It is important to note that since the pluggable device encrypts the data, mapping the data offers no additional benefit. The YANG model would simply convey the register values as requested. The properties are applied to the memory map in a manner that may appear disordered. The location values must always be read together and written as specified, potentially requiring multiple reads to retrieve all properties. This approach could be incorporated into the basic register-based option discussed in <xref target="opaque-config-solution-1"/>.</t>
        <t>As an example, let's assume a vendor defines secret attribute "DD" for its coherent pluggable. Vendor first needs to augment IETF data model with a list of encrypted values and memory-maps shown in <xref target="solution-4"/>. This very similar to <xref target="solution-1"/> where essentially the host functions as a proxy, transmitting the values from the NBI to the appropriate memory-map locations on the pluggable without needing to understand the meaning and semantics of these attributes.</t>
        <figure anchor="solution-4">
          <name>Solution-4 for support of opaque secret configuration attributes</name>
          <artwork><![CDATA[
 +--rw opaque-config-attribute-list* [conf-attribute-id]
     +--rw conf-attribute-id             uint32
     +--rw encrypted-attribute-name      string
     +--rw encrypted-attribute-value     string
     +--rw memory-map                    decimal64
]]></artwork>
        </figure>
      </section>
      <section anchor="support-plug-vendor-pm">
        <name>Support of Opaque Performance Monitoring Data</name>
        <t>The host packet device is informed of the properties via YANG augments and appropriate mapping definitions. The mapping definitions tell the host that the related properties are related to performance monitoring data such that the host will periodically read the appropriate parts of the pluggable interface as for any other performance monitoring data. AS for all other performance monitoring data, the host does not need to understand the data. The client controller can carry out analysis or can propagate the measures transparently to some other controller etc.</t>
      </section>
    </section>
    <section anchor="appendix-c-coherent-pluggable-repository">
      <name>Appendix C - Coherent Pluggable Repository</name>
      <t>[Editor's note: Formerly Manifest. GitHub issue #15 covers this].</t>
      <t>[Editor's note: Based on CCAMP WG's suggestion, this section is moved to Appendix for now. It might be moved from this draft to an existing IETF draft or to a new draft. We need to align with draft https://datatracker.ietf.org/doc/draft-ietf-ccamp-actn-poi-pluggable-usecases-gaps/ as well]</t>
      <t>Referring to <xref target="plug-capabilities-attributes"/>, the coherent pluggable capability attributes (i.e., supported-modes) are crucial aspects of coherent pluggables and should be easily accessible for various reasons and activities. Those might include:</t>
      <ul spacing="normal">
        <li>
          <t>Network Engineers: Network engineers needs to know the capabilities and characteristics of any coherent pluggable whether the coherent pluggable is already deployed or will potentially be installed and deployed in their network</t>
        </li>
        <li>
          <t>SDN Controllers: The optical, packet or higher-layer SDN controllers need to have detailed knowledge of the coherent pluggables for various reasons such as network planning, viability assessment of the photonic services from plug-to-plug, configuration and performance monitoring collection, alarm notifications etc.</t>
        </li>
        <li>
          <t>Packet Device (e.g., Router): Optionally the host packet device need also access to coherent pluggable capabilities to provide details of coherent pluggables already installed in packet devices for example during the debugging and troubleshooting of pluggables.</t>
        </li>
      </ul>
      <t>To facilitate the utilization of coherent pluggable attributes, this draft introduces the concept of the "Coherent Pluggable Repository" The term serves as a comprehensive collection of information that is appropriately structured and interrelated, providing a detailed description of the capabilities of a pluggable device. In alternative terminology, the Coherent Pluggable Repository may also be referred to as a Specification, a Profile, or a Plug database, among other terms.</t>
      <t>It should be noted that any equipment could have a repository describing its capabilities and it may be broken down into units that can be referenced and reused, i.e., the definition can be modular. To facilitate the stages, each vendor would be expected to provide this information for each pluggable type &amp; version.</t>
      <t>A pluggable type &amp; version may offer a subset of standard capabilities. The subset is described by simply omitting definitions.</t>
      <t>A pluggable type &amp; version may offer a super-set. The super-set is detailed by adding definitions via "augmentation" to the set of standard definitions available for use in the Coherent Pluggable Repository. These capability augmentations relate to augmentations to the YANG model used at the interface to the host. Note that host has no need to understand the semantics of the augmented properties, but does need to know the mapping to the pluggable interface. This is discussed in more detail elsewhere in this document.</t>
      <t>We should also consider the fact that some proprietary attributes and capabilities of the coherent pluggable might be commercially sensitive and hence confidential and a vendor might not want to provide it to publicly to everyone. In other words, some guidelines and restriction might be applicable to some portion of "Coherent Pluggable Repository". To provide more security, the access to the pluggable Repository could be restricted or password protected and potentially encrypted. It is also possible to provided restrict access to an operator or a team or group of people of an operator where there may also be a requirement for an NDA to enable access to the data. It is also possible that the encrypted section of the Repository might only be passed to a specific vendor control component (without being meaningfully observed by other control components from other vendors). The encrypted information may be passed via a special secure channel directly to a component authorized to decrypt the information into machine interpretable form and use it.</t>
      <t>Considering the above, it appears reasonable that all pluggable capabilities whether they be proprietary or standard should be fully described in the Repository (considering that some portions of the Repository might have restrictions as previously described). This may be achieved by a reference to a standard that is itself fully defined in machine interpretable form. This approach would allow for a far more flexible and future-proofed control solution.</t>
      <t>In summary, to facilitate easy access to coherent pluggable attributes, the details of coherent pluggable operational-modes are collected in a repository (access restriction might be applicable to some portions of this document), such as GitHub and SharePoint, called "Coherent Pluggable Repository". The Repository must be both human and machine-readable repository and can be read and interpreted easily by any SDN controller, operators, or other devices in the network. A Repository contains multiple records which are uniquely identified by tuple [organization-identifier, operational-mode].</t>
      <t>The Coherent Pluggable Repository contains four sections:</t>
      <ul spacing="normal">
        <li>
          <t>Photonic/Optical capability section: This section contains all photonic/optical capabilities of the coherent pluggable and identifies all read-only attributes. It also allow augmentation of this section for vendor-specific attributes.</t>
        </li>
        <li>
          <t>Configuration attributes: This section contains all read-writer attributes which can be configured on coherent pluggable. It also allow augmentation of this section for vendor-specific configuration attributes.</t>
        </li>
        <li>
          <t>PM Collection style for monitored attributes: List of all read-only monitored attributes where the coherent pluggable can collect PM data. This section identifies if the collection of current, average, min and max values are possible.</t>
        </li>
        <li>
          <t>PM Threshold values: For all or a subset of read-only monitored attributes, this section contains the threshold settings for threshold crossing alerts (TCA) if applicable.</t>
        </li>
      </ul>
      <t><xref target="_figure-optical-pluggable-repository"/> illustrates the overall structure of the "Coherent Pluggable Repository". It contains several operational-mode records where each record includes all the capability attributes for tuple [organization-identifier, operational-mode]. As discussed in <xref target="plug-capabilities-attributes"/>, "organization-identifier" refers to any authority that defines these attributes.</t>
      <t>Each record in the coherent pluggable Repository is machine readable/interpretable and is uniquely identified by a tuple [organization-identifier, operational-mode].</t>
      <t>Using "Coherent Pluggable Repository", the format of all operational-modes are identical whether it is defined by for example ITU-T, OIF, OpenConfig, or defined by a vendor.</t>
      <figure anchor="_figure-optical-pluggable-repository">
        <name>Coherent Pluggable Repository</name>
        <artwork><![CDATA[
   A record identified by
   tuple [organization-identifier, operational-mode]

  |--------------------------------------------------------|
  |                                                        |-|
  |  organization-identifier                               | |-|
  |  operational-mode                                      | | |
  |  version:                                              | | |
  |                                                        | | |
  |  Photonic/Optical capabilities attributes              | | |
  |  -----------------------------------------             | | |
  |  (i.e., Read-only attributes defined in                | | |
  |   operational-mode of this draft. For each attribute,  | | |
  |   min, max, default values might be available)         | | |
  |    - attribute A1                                      | | |
  |    - attribute A2                                      | | |
  |      ...                                               | | |
  |    - attribute An                                      | | |
  |    - List of vendor-specific capability attributes     | | |
  |      (augmented yang model)                            | | |
  |                                                        | | |
  |  Configuration attributes                              | | |
  |  --------------------------                            | | |
  |  ( The list of all read-write attributes where         | | |
  |   can be configured on coherent pluggables )           | | |
  |   are possible )                                       | | |
  |    - attribute C1                                      | | |
  |    - attribute C2                                      | | |
  |    ...                                                 | | |
  |    - attributeCWm                                      | | |
  |    - some vendor specific config attributes            | | |
  |      (augmented yang model)                            | | |
  |                                                        | | |
  |  Monitored attributes PM collection                    | | |
  |  ------------------------------------                  | | |
  |  (i.e., list of monitored attributes where             | | |
  |   coherent pluggable can collect PM data for           | | |
  |   current, average, min, max values)                   | | |
  |    - attribute M1                                      | | |
  |    - attribute M2                                      | | |
  |    ...                                                 | | |
  |    - attribute Mp                                      | | |
  |                                                        | | |
  |  Monitored attributes Threshold setting                | | |
  |  ---------------------------------------               | | |
  |  For all or some attribute M1,... Mp, define           | | |
  |    - threshold-for-warning-alert   (if applicable)     | | |
  |    - threshold-for-minor-alert     (if applicable)     | | |
  |    - threshold-for-major-alert     (if applicable)     | | |
  |    - threshold-for-critical-alert  (if applicable)     | | |
  |                                                        | | |
  |--------------------------------------------------------| | |
    |--------------------------------------------------------| |
      |--------------------------------------------------------|

 Coherent Pluggable Repository
   - Contains one or more operational-mode records
   - Each record for tuple [organization-identifier,operational-mode]
   - It is machine-readable/interpretable

]]></artwork>
      </figure>
      <t>Below are several examples that demonstrate the concept of the "Coherent Pluggable Repository." <xref target="_figure-optical-pluggable-repository-example_1"/> illustrates the content of a Repository record for operational mode 0x3E, as defined by the OIF forum. This operational mode is widely recognized and supported by nearly all coherent pluggable devices. Detailed information regarding this operational mode can be found in <xref target="SFF8024"/>, Table 4-7.</t>
      <figure anchor="_figure-optical-pluggable-repository-example_1">
        <name>Coherent Pluggable repository Defined by OIF</name>
        <artwork><![CDATA[
organization-identifier:  OIF
operational-mode: 0x3E
// Photonic/Optical capabilities attributes
list of attributes
      modulation: DP-16QAM
      bit-rate: 478.75 Gbps
      baud-rate: 59.84375 Gbd
      more attributes ...
// Configuration attributes
// Monitored attributes PM collection
// Monitored attributes Threshold setting
]]></artwork>
      </figure>
      <t><xref target="_figure-optical-pluggable-repository-example_2"/> is anther repository record where the Vendor-X has defined the operational-mode 0x22. In this case, Vendor-X defines all the attributes related to this operational-mode, which might not be supported by other pluggable vendors.</t>
      <figure anchor="_figure-optical-pluggable-repository-example_2">
        <name>Coherent Pluggable repository Example-2</name>
        <artwork><![CDATA[
organization-identifier: Vendor-X
operational-mode: 0x22
// Photonic/Optical capabilities attributes
list of attributes
      modulation: 16-QAM
      bit-rate: 400 Gbps
      baud-rate: 56 GBd
      more attributes ...
// Configuration attributes
// Monitored attributes PM collection
// Monitored attributes Threshold setting
]]></artwork>
      </figure>
      <t>"<xref target="_figure-optical-pluggable-repository-example_3"/>" presents an example where the Vendor-Y defined an operational-mode 0x22 as well. In this scenario, the organization associated with the pluggable module is Vendor-Y, which defined the same operational-mode 0x22 as "Vendor-X"</t>
      <t>It is important to note that while the operational-modes in both <xref target="_figure-optical-pluggable-repository-example_2"/> and <xref target="_figure-optical-pluggable-repository-example_3"/> share the same values, they are defined by different vendors. Consequently, these operational-modes are not related and may differ significantly in their attributes. In other words, although the semantics of these modes are identical, their actual content might vary significantly. This is one of the reasons that any record in Coherent Pluggable Repository is uniquely identified by tuple [organization-identifier, operational-mode].</t>
      <figure anchor="_figure-optical-pluggable-repository-example_3">
        <name>Coherent Pluggable repository Example-3</name>
        <artwork><![CDATA[
organization-identifier: Vendor-Y
operational-mode: 0x22
// Photonic/Optical capabilities attributes
type: NON-STANDARD
list of attributes
      modulation: QPSK
      bit-rate: 800 Gbps
      baud-rate: 96 GBd
      more attributes ...
// Configuration attributes
// Monitored attributes PM collection
// Monitored attributes Threshold setting
]]></artwork>
      </figure>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>TODO Security</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="CMIS" target="https://www.oiforum.com/wp-content/uploads/OIF-CMIS-05.3.pdf">
          <front>
            <title>OIF Implementation Agreement (IA) Common Management Interface Specification (CMIS))</title>
            <author>
              <organization>OIF Forum</organization>
            </author>
            <date year="2024" month="September"/>
          </front>
          <seriesInfo name="OIF CMIS IA" value=""/>
        </reference>
        <reference anchor="OIF-400ZR" target="https://www.oiforum.com/wp-content/uploads/OIF-400ZR-02.0.pdf">
          <front>
            <title>Implementation Agreement 400ZR</title>
            <author>
              <organization>OIF Forum</organization>
            </author>
            <date year="2022" month="November"/>
          </front>
        </reference>
        <reference anchor="G.698.1" target="https://www.itu.int/rec/dologin_pub.asp?lang=f&amp;id=T-REC-G.698.1-200506-S!!PDF-E&amp;type=items">
          <front>
            <title>Multichannel DWDM applications with single-channel optical interfaces</title>
            <author>
              <organization>ITU-T Recommendation G.698.1</organization>
            </author>
            <date year="2005" month="June"/>
          </front>
        </reference>
        <reference anchor="G.698.2" target="https://www.itu.int/rec/dologin_pub.asp?lang=e&amp;id=T-REC-G.698.2-201811-I!!PDF-E&amp;type=items">
          <front>
            <title>Amplified multichannel dense wavelength division multiplexing applications with single channel optical interfaces</title>
            <author>
              <organization>ITU-T Recommendation G.698.2</organization>
            </author>
            <date year="2018" month="November"/>
          </front>
        </reference>
        <reference anchor="G.695" target="https://www.itu.int/rec/dologin_pub.asp?lang=e&amp;id=T-REC-G.695-200402-S!!PDF-E&amp;type=items">
          <front>
            <title>Optical interfaces for coarse wavelength division multiplexing applications</title>
            <author>
              <organization>ITU-T Recommendation G.695</organization>
            </author>
            <date year="2025" month="May"/>
          </front>
        </reference>
        <reference anchor="G.959.1" target="https://www.itu.int/rec/dologin_pub.asp?lang=e&amp;id=T-REC-G.959.1-202401-I!!PDF-E&amp;type=items">
          <front>
            <title>Optical transport network physical layer interfaces</title>
            <author>
              <organization/>
            </author>
            <date year="2012" month="February"/>
          </front>
        </reference>
        <reference anchor="OC-device" target="https://openconfig.net/projects/models/schemadocs/yangdoc/openconfig-terminal-device-properties.html">
          <front>
            <title>Module to extend OpenConfig terminal device operational modes data</title>
            <author>
              <organization/>
            </author>
            <date/>
          </front>
        </reference>
        <reference anchor="OC-platform" target="https://openconfig.net/projects/models/schemadocs/yangdoc/openconfig-platform.html">
          <front>
            <title>Data model for representing a system component inventory</title>
            <author>
              <organization/>
            </author>
            <date/>
          </front>
        </reference>
        <reference anchor="TAPI-2.5.0" target="https://github.com/Open-Network-Models-and-Interfaces-ONMI/TAPI/tree/v2.5.0">
          <front>
            <title>Linux Foundation Project Transport API (TAPI)</title>
            <author>
              <organization/>
            </author>
            <date/>
          </front>
        </reference>
        <reference anchor="SFF8024" target="https://members.snia.org/document/dl/26423">
          <front>
            <title>SFF Module Management Reference Code Tables</title>
            <author>
              <organization>SNIA SFF Technology Affiliate (TA) Technical Work Group (TWG), Small Form Factor Technology Affiliate</organization>
            </author>
            <date year="2023" month="November"/>
          </front>
        </reference>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="I-D.ietf-ccamp-optical-impairment-topology-yang">
          <front>
            <title>A YANG Data Model for Optical Impairment-aware Topology</title>
            <author fullname="Dieter Beller" initials="D." surname="Beller">
              <organization>Nokia</organization>
            </author>
            <author fullname="Esther Le Rouzic" initials="E." surname="Le Rouzic">
              <organization>Orange</organization>
            </author>
            <author fullname="Sergio Belotti" initials="S." surname="Belotti">
              <organization>Nokia</organization>
            </author>
            <author fullname="Gabriele Galimberti" initials="G." surname="Galimberti">
              <organization>Nokia</organization>
            </author>
            <author fullname="Italo Busi" initials="I." surname="Busi">
              <organization>Huawei Technologies</organization>
            </author>
            <date day="7" month="July" year="2025"/>
            <abstract>
              <t>   In order to provision an optical connection through optical networks,
   a combination of path continuity, resource availability, and
   impairment constraints must be met to determine viable and optimal
   paths through the network.  The determination of appropriate paths is
   known as Impairment-Aware Routing and Wavelength Assignment (IA-RWA)
   for a Wavelength Switched Optical Network (WSON), while it is known
   as Impairment-Aware Routing and Spectrum Assignment (IA-RSA) for a
   Spectrum Switched Optical Network (SSON).

   This document provides a YANG data model for the impairment-aware TE
   topology in optical networks.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-ccamp-optical-impairment-topology-yang-19"/>
        </reference>
        <reference anchor="I-D.ietf-ccamp-rfc9093-bis">
          <front>
            <title>Common YANG Data Types for Layer 0 Optical Networks</title>
            <author fullname="Sergio Belotti" initials="S." surname="Belotti">
              <organization>Nokia</organization>
            </author>
            <author fullname="Italo Busi" initials="I." surname="Busi">
              <organization>Huawei</organization>
            </author>
            <author fullname="Dieter Beller" initials="D." surname="Beller">
              <organization>Nokia</organization>
            </author>
            <author fullname="Esther Le Rouzic" initials="E." surname="Le Rouzic">
              <organization>Orange</organization>
            </author>
            <author fullname="Aihua Guo" initials="A." surname="Guo">
              <organization>Futurewei Technologies</organization>
            </author>
            <date day="7" month="August" year="2025"/>
            <abstract>
              <t>   This document defines a collection of common data types, identities,
   and groupings in the YANG data modeling language.  These common types
   and groupings, derived from the built-in YANG data types, identities,
   and groupings are intended to be imported by modules that model
   Optical Layer 0 configuration and state capabilities, such as
   Wavelength Switched Optical Networks (WSONs) and flexi-grid Dense
   Wavelength Division Multiplexing (DWDM) networks.

   This document obsoletes RFC 9093 by replacing the YANG module it
   contained with a new revision that includes additional YANG data
   types, identities and groupings.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-ccamp-rfc9093-bis-16"/>
        </reference>
        <reference anchor="I-D.ietf-ccamp-dwdm-if-param-yang">
          <front>
            <title>A YANG data model to manage configurable DWDM optical interfaces</title>
            <author fullname="Gabriele Galimberti" initials="G." surname="Galimberti">
              <organization>Nokia</organization>
            </author>
            <author fullname="Dharini Hiremagalur" initials="D." surname="Hiremagalur">
              <organization>Juniper</organization>
            </author>
            <author fullname="Gert Grammel" initials="G." surname="Grammel">
              <organization>Juniper</organization>
            </author>
            <author fullname="Roberto Manzotti" initials="R." surname="Manzotti">
              <organization>Cisco</organization>
            </author>
            <author fullname="Dirk Breuer" initials="D." surname="Breuer">
              <organization>DEUTSCHE TELEKOM AG</organization>
            </author>
            <date day="7" month="July" year="2025"/>
            <abstract>
              <t>   This memo defines a Yang model related to the Optical Transceiver
   parameters characterising coherent 100G and above interfaces.  100G
   and above Transceivers support coherent modulation, multiple
   modulation formats, multiple FEC codes including some not yet
   specified (or in phase of specification by) [ITU-T_G.698.2] or any
   other ITU-T recommendation.  Use cases are described in [RFC7698].

   The Yang model defined in this memo can be used for Optical
   Parameters monitoring and/or configuration of DWDM interfaces.  The
   use of this model does not guarantee interworking of DWDM
   transceivers.  Optical path feasibility and interoperability has to
   be determined by tools and algorithms outside the scope of this
   document.  The purpose of this model is to program interface
   parameters to consistently configure the mode of operation of
   transceivers.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-ccamp-dwdm-if-param-yang-13"/>
        </reference>
        <reference anchor="I-D.ietf-ccamp-wdm-tunnel-yang">
          <front>
            <title>A YANG Data Model for WDM Tunnels</title>
            <author fullname="Aihua Guo" initials="A." surname="Guo">
              <organization>Futurewei Technologies</organization>
            </author>
            <author fullname="Sergio Belotti" initials="S." surname="Belotti">
              <organization>Nokia</organization>
            </author>
            <author fullname="Gabriele Galimberti" initials="G." surname="Galimberti">
              <organization>Individual</organization>
            </author>
            <author fullname="Universidad Autonoma de Madrid" initials="U. A." surname="de Madrid">
              <organization>Naudit HPCN</organization>
            </author>
            <author fullname="Daniel Perdices Burrero" initials="D. P." surname="Burrero">
              <organization>Universidad Autonoma de Madrid</organization>
            </author>
            <date day="3" month="July" year="2025"/>
            <abstract>
              <t>   This document defines a YANG data model for the provisioning and
   management of Traffic Engineering (TE) tunnels and Label Switched
   Paths (LSPs) in Optical Networks (Wavelength Switched Optical
   Networks (WSON) and Flexi-Grid Dense Wavelength Division Multiplexing
   (DWDM) Networks).

   The YANG data model defined in this document conforms to the Network
   Management Datastore Architecture (NMDA).

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-ccamp-wdm-tunnel-yang-05"/>
        </reference>
        <reference anchor="I-D.ietf-ccamp-optical-path-computation-yang">
          <front>
            <title>YANG Data Models for requesting Path Computation in WDM Optical Networks</title>
            <author fullname="Italo Busi" initials="I." surname="Busi">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Aihua Guo" initials="A." surname="Guo">
              <organization>Futurewei Technologies</organization>
            </author>
            <author fullname="Sergio Belotti" initials="S." surname="Belotti">
              <organization>Nokia</organization>
            </author>
            <date day="29" month="August" year="2025"/>
            <abstract>
              <t>   This document provides a mechanism to request path computation in
   Wavelength-Division Multiplexing (WDM) optical networks composed of
   Wavelength Switched Optical Networks (WSON) and Flexi-Grid Dense
   Wavelength Division Multiplexing (DWDM) switched technologies.  This
   model augments the Remote Procedure Calls (RPCs) defined in RFC YYYY.

   [RFC EDITOR NOTE: Please replace RFC YYYY with the RFC number of
   draft-ietf-teas-yang-path-computation once it has been published.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-ccamp-optical-path-computation-yang-06"/>
        </reference>
      </references>
    </references>
    <?line 1724?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>TODO acknowledge.</t>
      <t>module</t>
    </section>
    <section anchor="contributors" numbered="false" toc="include" removeInRFC="false">
      <name>Contributors</name>
      <contact initials="N." surname="Davis" fullname="Nigel Davis">
        <organization>Ciena</organization>
        <address>
          <email>ndavis@ciena.com</email>
        </address>
      </contact>
      <contact initials="I." surname="Busi" fullname="Italo Busi">
        <organization>Huawei Technologies</organization>
        <address>
          <email>italo.busi@huawei.com</email>
        </address>
      </contact>
      <contact initials="S." surname="Belotti" fullname="Sergio Belotti">
        <organization>Nokia</organization>
        <address>
          <email>sergio.belotti@nokia.com</email>
        </address>
      </contact>
      <contact initials="D." surname="Beller" fullname="Dieter Beller">
        <organization>Nokia</organization>
        <address>
          <email>dieter.beller@nokia.com</email>
        </address>
      </contact>
      <contact initials="R." surname="Manzotti" fullname="Roberto Manzotti">
        <organization>Cisco</organization>
        <address>
          <email>rmanzott@cisco.com</email>
        </address>
      </contact>
      <contact initials="P." surname="Manna" fullname="Prasenjit Manna">
        <organization>Cisco</organization>
        <address>
          <email>prmanna@cisco.com</email>
        </address>
      </contact>
      <contact initials="G." surname="Galimberti" fullname="Gabriele Galimberti">
        <organization>Nokia</organization>
        <address>
          <email>ggalimbe56@gmail.com</email>
        </address>
      </contact>
      <contact initials="H." surname="Venkatraman" fullname="Harish Venkatraman">
        <organization>Nokia</organization>
        <address>
          <email>harish.venkatraman@nokia.com</email>
        </address>
      </contact>
      <contact initials="G." surname="Mishra" fullname="Gyan Mishra">
        <organization>Verizon</organization>
        <address>
          <email>gyan.s.mishra@verizon.com</email>
        </address>
      </contact>
      <contact initials="S." surname="Melin" fullname="Stefan Melin">
        <organization>Telia</organization>
        <address>
          <email>stefan.melin@teliacompany.com</email>
        </address>
      </contact>
      <contact initials="M." surname="Hossein Poor" fullname="Majid Hossein Poor">
        <organization>Telstra</organization>
        <address>
          <email>majid.hosseinpoor@team.telstra.com</email>
        </address>
      </contact>
      <contact initials="D." surname="Demeter" fullname="Dacian Demeter">
        <organization>Telus</organization>
        <address>
          <email>dacian.demeter@telus.com</email>
        </address>
      </contact>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA+y96XIc15Uw+B9PkQ1H2IBdCwFKssS21QYBkuIMQcAEZFlt
6+tIVGUBKVZlljOzsFjkRL/D/JqImYjvWb5H6SeZs957bubNQoGivMw0wqaA
qsy7nHvu2ZfhcLjV5M08e5JsH6VNmhyX02w+z4vLJC2myYt0mRwU6fyuzuuk
nCUnyyafpPPkdL66vEwv5lmd5EVymk7eZk1ycp1V7onXWXNTVm+3t9KLiyq7
huH9yN1RtrcmaZNdltXdExhwVm5tTctJkS5gWdMqnTXDqny7yoeTSbpYDtNJ
UwxvpovhUt8fLnTs4RzGqZutenWxyOs6L4vmbgmjvHx2/jxJfpak87qEteTF
NFtm8E/RbA+S7WyaN2WVp3P84+XBU/hPWcFvb86fb28Vq8VFVj3ZmsLIT7Ym
ZVFnRb2qnyRNtcq2YGePt9IqS2HUN+WqgTVsb+HOL6tytYQPD8vFoiySQ1hJ
Vc4JqsdZWq+qbAGzAwzSItveepvdwUvTJ1vJMCmy2ya5zIqsShvYAH60KvJJ
WdGv9TKt3hIYp3ndVPnFqsmmyTybXmbV1nVWrGCRSfKw2ZOEobT9DSwch36B
r+PnizSfw+cE+N/lWTMbldUlfpFWkyv44qpplvWT8Rifw4/y62ykj43xg/FF
Vd7U2ZhGGOObl3lztbrAQ2jSeXmxqvPxuhPFV/hQzXTu1RGPNsrLtYOMH4ZF
o6tmMd/e2kpXzVVZITyH8P8EUBOO/c0oeYPj0Cez1XzOePom+2tqvoD9p0X+
VzrBJ8lhnhUpfZ4xRCtayu8m+PloUi62wjkORsmLVdma4SC/WqXu83CC56sG
zvQmy5PzbHJVlPPyMs9qO2OKb1+uSjqe313ih5GJT0fJ02yaVtPW3KdX+dx+
095ePSntZMurC3oWNgjfROZ5OkrObtLFXZE2V2nRmuxp57twutfl2zyAZu0f
H138rsCvI3O+AKBW6WKRzVvzvciqJvgqnO5/g9u3hMtlJry85Kd/9z1/Nyqy
ZgtpA1/IDs68HiVH6XXOB8KTvs4vs7n5FOaM4EkxxQd68eQlHBfcgtZ+XuLt
8F/QyF+t0nXYQRdqhDfqd1f0ZGSyM8SNedk07fnOsuoyL4Mvac7uOdGDowt+
sPegjmiiuYDcz3MEqAssxnwXn2ZKz+E08FzvLHCPj9Pir5H9vCmB4Ddl+LWc
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
HTb10AabGFo6lBQs/D1M1I+tJogupkTZkTaNKrDtM0JEIFyvGaZ3NSCJYuc5
ik08PmrXKunYVtnNeFLh1EHBbOxKYnPt3IVHZt5xtqOT/r5Kvn0gNrZVu4Aj
pzW8QplvJyXSWHv2wZ0nI7SYtKi0cIiFiRy2Wee61RgT7RsJ8ZSyXPBbN5Z+
hLXWau12Ez2pKkMyjpHIKIliqRZtosmqT3TcyDBOkWS39ZsNHTJtSy/XSezL
L7CiPuqQXJKlK167PrFUaBO9Aher6aU02+xoj63VGNVDsmK9Pn7C9qDcVjMA
oZvyVNzt6lHLaMXcPUr0Hx8dXbf08thJkaBX+y2YePquzMLKuN+UZzBk7pPs
iyARFGOkO8f9R0mxv19MWqhBsRVnndrM7M4wJHvveyl7jl3sbENLxDdsH4NT
SL2XyGp2pCwhNn2+9A2f7wtvbhvTLWxa+a/roPMQ2NSgzMMI1LQngFKEFnu4
3QsmurApJV11RAFuKxsB5FqotU37D8Obb/+58IbLWUZahscxqO1oeCjefPtw
vPkng43nmgobRph11ygoMNenM2wEEoFAZJiHAsVs6mPBxjhhNoDNt///go0X
BQ6Soiyo9boPk8tIyML8kIoteQw4rirA+YIdIkq2WGDYvnYBNmLG7KibgrN6
KcndtJ3+34HTdpgvzTxI5lnK9BYLfVGqnSnoS4upr/JZ05er5bKkvXFYs9d4
odiBmluUppep82F0TWQgUl9e2YQbVGNWC4DCW8zCiKeZtt1lG4HYgwjTUIsI
vRFLOSs8vrZceD6FZAeE6XDBpiq0yTMz4+05pkbbCYBPEtAwNoxa9SauOCwV
tOF5WykwrURpO0y8Se/ON0fHu+uqg7Rdic9EyJ92qjR4M7+11Jth7GryYoqd
68oqKEXnO8WHjXmvQKanSg8x54kv8+0SbdtRM/FNhYaXSB8cGk9S5akdcWSY
j+J0+6mDl5eL+yOWT48ly+5Bwcr1HdDFW4pTPlSK7sc8o2/x7Xpr64CbDxL5
5c+pAaGV9o2b0S8CawJUq0ku2g/7Pdgg53L6u/3muNs6GU1SujmmNE8eNP2u
R8kJUAFE3LyuV4g/nJGXIWbN8/qK2xGrF4kMuKjd8hKuuYoCdboECkPNLLG1
pzyBWaayTLwpneaR2LB1Xevy/lbsg/ua0Utb4006yWO6URAZLuf6Hu1uN8Rw
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
Mo3fnZq/QsyVxGPvX2lq7Szz7wEA

-->

</rfc>
