<?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-ietf-ccamp-actn-wdm-pluggable-modelling-00" category="info" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.31.0 -->
  <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-ietf-ccamp-actn-wdm-pluggable-modelling-00"/>
    <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="2026" month="January" 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-ietf-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="10" month="October" 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-20"/>
        </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="3" month="November" 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-19"/>
        </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="20" month="October" 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-14"/>
        </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="20" month="October" 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-06"/>
        </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+tIVGUBKVZlljOzsFjiRL/D/JqImYjvWb5H6SeZs957bubNQoGkvMw0wqaA
qsy7nHvu2ZfhcLjV5M08e5JsH6VNmhyX02w+z4vLJC2myYt0mRwU6fyuzuuk
nCUnyyafpPPkdL66vEwv5lmd5EVymk7eZk1ycp1V7onXWXNTVm+3t9KLiyq7
huH9yN1RtrcmaZNdltXdExhwVm5tTctJkS5gWdMqnTXDPGtmw8kkXSyH6aQp
hjfTxXCprw8XOvTw0aOtenWxyOs6L4vmbgkDvHx2/jxJfpak87qEZeTFNFtm
8E/RbA+S7WyaN2WVp3P84+XBU/hPWcFvb86fb28Vq8VFVj3ZmsLinmxNyqLO
inpVP0maapVtwaYeb6VVlsKob8pVA/Nvb+GmL6tytYQPD8vFoiySQ1hJVc4J
oMdZWq+qbAGzw/bTItveepvdwUvTJ1vJMCmy2ya5zIqsShvYAH60KvJJWdGv
9TKt3hIEp3ndVPnFqsmmyTybXmbV1nVWrGCRSfKw2ZOEobT9DSwch36Br+Pn
izSfw+cE9N8h/EdldYlfpNXkCr64appl/WQ8xufwo/w6G+ljY/xgfFGVN3U2
phHG+OZl3lytLvAQmnReXqzqfLzuNPGVOYC+bsx07tURjzbKy7WDjBmBqvLt
Kt8Ag0ZXzWK+vbWVrpqrskJ4DuH/CWAlHPubUfIGx6FPZqv5nFH0TfbX1HwB
+0+L/K90gk+SwzwrUvo8Y4hWtJTfTfDz0aRcbIVzHIySF6uyNcNBfrVK3efh
BM9XDZzpTZYn59nkqijn5WWe1XbGFN++XJV0PL+7xA8jE5+OkqfZNK2mrblP
r/K5/aa9vXpS2smWVxf0LGwQvonM83SUnN2ki7siba7SojXZ08534XSvy7d5
AM3aPz66+F2BX0fmfAFArdLFIpu35nuRVU3wVTjd/wa3bwmXy0x4eclP/+57
/m5UZM0W0ga+kB2ceT1KjtLrnA+EJ32dX2Zz8ynMGcGTYooP9OLJSzguuAWt
/bzE2+G/oJG/WqXrsIMu1Ahv1O+u6MnIZGeIG/OyadrznWXVZV4GX9Kc3XOi
B0cX/GDvQR3RRHMBuZ/nCFAXuIv5Lj7NlJ7DaeC53lngHh+nxV8j+3lTAsFv
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
1PwVYq4kHnv/Am5RtCnb7wEA

-->

</rfc>
