<?xml version="1.0" encoding="utf-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.24 (Ruby 3.2.3) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

]>

<?rfc comments="yes"?>

<rfc ipr="trust200902" docName="draft-ietf-ccamp-rfc9093-bis-17" category="std" consensus="true" submissionType="IETF" obsoletes="9093" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="L0 Common YANG Types">Common YANG Data Types for Layer 0 Optical Networks</title>

    <author initials="S." surname="Belotti" fullname="Sergio Belotti" role="editor">
      <organization>Nokia</organization>
      <address>
        <email>sergio.belotti@nokia.com</email>
      </address>
    </author>
    <author initials="I." surname="Busi" fullname="Italo Busi" role="editor">
      <organization>Huawei</organization>
      <address>
        <email>italo.busi@huawei.com</email>
      </address>
    </author>
    <author initials="D." surname="Beller" fullname="Dieter Beller" role="editor">
      <organization>Nokia</organization>
      <address>
        <email>dieter.beller@nokia.com</email>
      </address>
    </author>
    <author initials="E." surname="Le Rouzic" fullname="Esther Le Rouzic">
      <organization>Orange</organization>
      <address>
        <email>esther.lerouzic@orange.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>

    <date year="2025" month="October" day="02"/>

    
    <workgroup>CCAMP Working Group</workgroup>
    

    <abstract>


<?line 206?>

<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.</t>

<t>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>

  <middle>


<?line 217?>

<section anchor="introduction"><name>Introduction</name>

<t>This document introduces a collection of common data types derived
   from the built-in YANG data types.  The derived types and groupings
   are designed to be the common types applicable for modeling Traffic
   Engineering (TE) features as well as non-TE features (e.g., physical
   network configuration aspects) for Layer 0 optical networks in
   models defined outside of this document.  The applicability of
   Layer 0 types specified in this document includes Wavelength Switched
   Optical Networks (WSONs) <xref target="RFC6163"/> <xref target="ITU-T_G.694.1"/> and <xref target="ITU-T_G.694.2"/>, and flexi-grid Dense
   Wavelength Division Multiplexing (DWDM) networks <xref target="RFC7698"/>
   <xref target="ITU-T_G.694.1"/>.</t>

<t>This document adds new type definitions to the YANG modules and
   obsoletes <xref target="RFC9093"/>.  For further details, see the revision
   statements of the YANG module in <xref target="yang-code"/> or the summary in
   <xref target="changes-bis"/>.</t>

<t>This document obsoletes <xref target="RFC9093"/> by replacing it in its entirety. It
provides a new revision of the YANG module contained in that RFC,
and retains the data types previously defined, but also adds new type
definitions to the YANG module.
For further details, see <xref target="changes-bis"/>.</t>

<t>The YANG data model in this document conforms to the Network
   Management Datastore Architecture defined in <xref target="RFC8342"/>.</t>

<section anchor="editorial-note-to-be-removed-by-rfc-editor"><name>Editorial Note (To be removed by RFC Editor)</name>

<ul empty="true"><li>
  <t>Note to the RFC Editor: This section is to be removed prior to publication.</t>
</li></ul>

<t>This document contains placeholder values that need to be replaced with finalized values at the time of publication. This note summarizes all of the substitutions that are needed.</t>

<t>Please apply the following replacements:</t>

<t><list style="symbols">
  <t>XXXX --&gt; the assigned RFC number for this I-D</t>
  <t>YYYY --&gt; the assigned RFC number for <xref target="I-D.ietf-teas-rfc8776-update"/></t>
  <t>ZZZZ --&gt; the assigned RFC number for <xref target="I-D.ietf-ccamp-optical-impairment-topology-yang"/></t>
</list></t>

<t>Please replace the revision date of the latest revision of the 'ietf-layer0-types' module with the publication date of this I-D, using the the format (year-month-day).</t>

<t>Please manually fix the YANG trees in <xref target="yang-tree"/> which have been generated by pyang and have some bugs.</t>

</section>
<section anchor="terminology-and-notations"><name>Terminology and Notations</name>

<t>In the context of this document, the term "layer 0" refers to the
photonic layer or WDM layer network in the architecture of the
optical transport network (OTN) as defined in <xref target="ITU-T_G.709"/>, <xref target="ITU-T_G.872"/>,
and <xref target="ITU-T_G.807"/> as opposed to the electrical switching
layers of the OTN, which are typically referred to as layer 1 (L1).</t>

<t>The term "layer 0" may also be used for other transport network
technologies (e.g., copper-based, radio-based, or free space optics-based, etc.), which are outside the scope of this document.</t>

<t>Refer to <xref target="RFC7446"/> and <xref target="RFC7581"/> for other key terms used in this
   document, and the terminology for describing YANG data models can be
   found in <xref target="RFC7950"/>.</t>

<t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED",
"MAY", and "OPTIONAL" 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.
<?line -6?></t>

</section>
<section anchor="prefix-in-data-node-names"><name>Prefix in Data Node Names</name>

<t>In this document, names of data nodes and other data model objects
   are prefixed using the standard prefix associated with the
   corresponding YANG imported module.</t>

<texttable title="Prefixes and corresponding YANG module" anchor="tab-prefixes">
      <ttcol align='left'>Prefix</ttcol>
      <ttcol align='left'>YANG module</ttcol>
      <ttcol align='left'>Reference</ttcol>
      <c>te-types</c>
      <c>ietf-te-types</c>
      <c>[RFCYYYY]</c>
      <c>l0-types</c>
      <c>ietf-layer0-types</c>
      <c>RFC XXXX</c>
</texttable>

</section>
</section>
<section anchor="layer-0-types-module-contents"><name>Layer 0 Types Module Contents</name>

<t>This document defines a YANG module for common Layer 0 types, ietf-layer0-types.
This module is used for WSON and flexi-grid DWDM networks.</t>

<section anchor="identities"><name>Identities</name>

<t>The "ietf-layer0-types" module contains the following YANG reusable YANG identities:</t>

<dl>
  <dt>l0-grid-type:</dt>
  <dd>
    <t>A base YANG identity for the grid type as defined in <xref target="RFC6205"/> and <xref target="RFC7699"/>.</t>
  </dd>
  <dt>cwdm-ch-spc-type:</dt>
  <dd>
    <t>A base YANG identity for the Coarse Wavelength Division
Multiplexing (CWDM) channel-spacing type as defined in <xref target="RFC6205"/>.</t>
  </dd>
  <dt>dwdm-ch-spc-type:</dt>
  <dd>
    <t>A base YANG identity for the DWDM channel-spacing type as defined
in <xref target="RFC6205"/>.</t>
  </dd>
  <dt>flexi-ncfg-type:</dt>
  <dd>
    <t>A base YANG identity for the DWDM flexi-grid Nominal Central Frequency Granularity (NCFG) 
type as defined in <xref target="RFC7699"/>.</t>
  </dd>
</dl>

<ul empty="true"><li>
  <t>Note that the only value for NCFG standardized in <xref target="ITU-T_G.694.1"/> is 6.25GHz.</t>
</li></ul>

<dl>
  <dt>flexi-slot-width-granularity:</dt>
  <dd>
    <t>A base YANG identity for the DWDM flexi-grid Slot Width Granularity (SWG) type, as defined in <xref target="RFC7699"/>.</t>
  </dd>
  <dt/>
  <dd>
    <t>Note that the only value for SWG standardized in <xref target="ITU-T_G.694.1"/> is 12.5GHz.</t>
  </dd>
  <dt>fec-type:</dt>
  <dd>
    <t>A base YANG identity from which specific FEC (Forward Error Correction) type identities are derived.</t>
  </dd>
  <dt>line-coding:</dt>
  <dd>
    <t>A base YANG identity from which specific identities defining the bit rate/line coding of optical tributary signals are derived.</t>
  </dd>
  <dt>wavelength-assignment:</dt>
  <dd>
    <t>A base YANG identity from which specific identities defining the Wavelength selection methods, as defined in <xref target="RFC7689"/>, are derived.</t>
  </dd>
  <dt>modulation:</dt>
  <dd>
    <t>A base YANG identity to define the different modulation types, as defined in <xref target="ITU-T_G.Sup39"/></t>
  </dd>
  <dt>switching-wson-lsc:</dt>
  <dd>
    <t>A YANG identity for the Wavelength Switched Optical Network Lambda-Switch Capable (WSON-LSC) interface switching capability as defined in <xref target="RFC7688"/>.</t>
  </dd>
  <dt>switching-flexi-grid-lsc:</dt>
  <dd>
    <t>A YANG identity for the Flexi-Grid Lambda-Switch Capable (Flexi-Grid-LSC) interface switching capability as defined in <xref target="RFC8363"/>.</t>
  </dd>
</dl>

<t>It is worth noting that there is an inheritance relationship between the Lambda-Switch Capable (LSC) switching capability, defined in <xref target="RFC3471"/>, and the WSON-LSC and Flexi-Grid-LSC, defined respectively in <xref target="RFC7688"/> and <xref target="RFC8363"/>. As a consequence, the 'switching-wson-lsc' and 'switching-flexi-grid-lsc' YANG identities are defined as derived identities from the 'switching-lsc', defined in <xref target="I-D.ietf-teas-rfc8776-update"/>.</t>

</section>
<section anchor="data-types"><name>Data Types</name>

<t>The "ietf-layer0-types" module contains the following YANG reusable YANG data types:</t>

<dl>
  <dt>operational-mode:</dt>
  <dd>
    <t>A YANG data type used to identify an organization (e.g., vendor) specific mode for transceiver capability description, as defined in <xref section="2.6.2" sectionFormat="of" target="I-D.ietf-ccamp-optical-impairment-topology-yang"/></t>
  </dd>
  <dt>snr:</dt>
  <dd>
    <t>A YANG data type used to represent an (Optical) Signal-to-noise ratio measured over 0.1 nm resolution bandwidth, as defined in <xref target="ITU-T_G.977.1"/></t>
  </dd>
  <dt>psd:</dt>
  <dd>
    <t>A YANG data type used to represent a Power Spectral Density (PSD), as defined in <xref target="ITU-T_G.9700"/></t>
  </dd>
</dl>

<section anchor="reporting-unknown-values"><name>Reporting unknown values</name>

<t>Some data types, whose identifiers are suffixed as "-or-null", are defined as a union with an empty type (e.g., snr-or-null).</t>

<t>The empty data type is added to allow reporting the cases where the value is unknown and differentiating the case where an attribute is unknown from the case where an attribute is not applicable:</t>

<t><list style="symbols">
  <t>if the value of a mandatory attribute is unknown, it MUST be reported using the empty type;</t>
  <t>if an optional attribute is applicable but its value is unknown, it MUST be reported using the empty type;</t>
  <t>if an optional attribute is not applicable to an entity, it MUST be omitted (not be present in the datastore).</t>
</list></t>

</section>
</section>
<section anchor="groupings"><name>Groupings</name>

<t>The "ietf-layer0-types" module contains the following YANG reusable YANG groupings:</t>

<dl>
  <dt>wson-label-start-end:</dt>
  <dd>
    <t>The WSON label range was defined in <xref target="RFC6205"/>, and the generic
topology model defines the label-start/label-end in <xref target="RFC8795"/>.
This grouping shows the WSON-specific label-start and label-end
information. See <xref target="label-range"/> for more details.</t>
  </dd>
  <dt>wson-label-hop:</dt>
  <dd>
    <t>The WSON label range was defined in <xref target="RFC6205"/>, and the generic
topology model defines the label-hop in <xref target="RFC8795"/>.  This grouping
shows the WSON-specific label-hop information. See <xref target="label-range"/> for more details.</t>
  </dd>
  <dt>l0-label-range-info:</dt>
  <dd>
    <t>A YANG grouping that defines the Layer 0 label range information
applicable for WSON as defined in <xref target="RFC6205"/>. The label range info is defined per priority <xref target="RFC4203"/>.</t>
  </dd>
  <dt/>
  <dd>
    <t>This grouping is used in the flexi-grid DWDM by adding more flexi-grid-specific
parameters. See <xref target="label-range"/> for more details.</t>
  </dd>
  <dt>wson-label-step:</dt>
  <dd>
    <t>A YANG grouping that defines label steps for WSON as defined in
<xref target="I-D.ietf-teas-rfc8776-update"/>. See <xref target="label-range"/> for more details.</t>
  </dd>
  <dt>flexi-grid-label-start-end:</dt>
  <dd>
    <t>The flexi-grid label range was defined in <xref target="RFC7699"/>, and the
generic topology model defines the label-start/label-end in
<xref target="RFC8795"/>.</t>
  </dd>
  <dt/>
  <dd>
    <t>This grouping shows the flexi-grid-specific label-start and label-end information which is used to describe the range of available nominal central frequencies. See <xref target="label-range"/> for more details.</t>
  </dd>
  <dt/>
  <dd>
    <t>As described in <xref section="3.1" sectionFormat="of" target="RFC8363"/>, the range of available nominal central frequencies is advertised for m=1, which means that for an available central frequency n, the frequency slot from central frequency n-1 to central frequency n+1 is available.</t>
  </dd>
  <dt>flexi-grid-label-hop:</dt>
  <dd>
    <t>The flexi-grid label range was defined in <xref target="RFC8363"/>, and the
generic topology model defines the label-hop in <xref target="RFC8795"/>.</t>
  </dd>
  <dt/>
  <dd>
    <t>This grouping shows the WSON-specific label-hop information. See <xref target="label-range"/> for more details.</t>
  </dd>
  <dt>flexi-grid-label-range-info:</dt>
  <dd>
    <t>A YANG grouping that defines flexi-grid label range information as
defined in <xref target="RFC8363"/>. See <xref target="label-range"/> for more details. See <xref target="label-range"/> for more details.</t>
  </dd>
  <dt>flexi-grid-label-step:</dt>
  <dd>
    <t>A YANG grouping that defines flexi-grid label steps as defined in
<xref target="I-D.ietf-teas-rfc8776-update"/>. See <xref target="label-range"/> for more details.</t>
  </dd>
  <dt>wdm-label-start-end:</dt>
  <dd>
    <t>A YANG grouping that combines the definition of label-start/label-end information
that was defined separately in wson-label-start-end and flexi-grid-label-start-end,
to support optical network scenarios that contain both fixed- and flexi-grid
links. See <xref target="label-range"/> for more details.</t>
  </dd>
  <dt>wdm-label-hop:</dt>
  <dd>
    <t>A YANG grouping that combines the definition of label hop information
that was defined separately in wson-label-hop and flexi-grid-label-hop,
to support optical network scenarios that contain both fixed- and flexi-grid
links. See <xref target="label-range"/> for more details.</t>
  </dd>
  <dt>wdm-label-range-info:</dt>
  <dd>
    <t>A YANG grouping that combines the definition of label range information
that was defined separately in wson-label-range-info and flexi-grid-label-range-info,
to support optical network scenarios that contain both fixed- and flexi-grid
links. See <xref target="label-range"/> for more details.</t>
  </dd>
  <dt>wdm-label-step:</dt>
  <dd>
    <t>A YANG grouping that combines the definition of label step information
defined separately in wson-label-step and flexi-grid-label-step,
to support optical network scenarios that contain both fixed- and flexi-grid
links. See <xref target="label-range"/> for more details.</t>
  </dd>
  <dt>transceiver-capabilities:</dt>
  <dd>
    <t>A YANG grouping to define the transceiver capabilities (also called
"modes") needed to determine optical signal compatibility.</t>
  </dd>
  <dt/>
  <dd>
    <t>When this grouping is used, the explicit-mode container shall be augmented
with a leafref to an explicit mode template with the proper XPath, which
depends from where this grouping is actually used.</t>
  </dd>
</dl>

<ul empty="true"><li>
  <t>Examples of how the transceiver-capabilities grouping can be used and augmented with a leafref
to an explicit mode template are provided in the YANG models defined in
<xref target="I-D.ietf-ccamp-optical-impairment-topology-yang"/> and <xref target="I-D.ietf-ccamp-dwdm-if-param-yang"/>.</t>
</li></ul>

<dl>
  <dt>standard-mode:</dt>
  <dd>
    <t>A YANG grouping for the standard modes defined in <xref target="ITU-T_G.698.2"/>.</t>
  </dd>
  <dt>organizational-mode:</dt>
  <dd>
    <t>A YANG grouping to define transponder operational mode supported by
organizations or vendors, as defined in <xref target="I-D.ietf-ccamp-optical-impairment-topology-yang"/>.</t>
  </dd>
  <dt>explicit-mode:</dt>
  <dd>
    <t>A YANG grouping to define the list of attributes related to the limits of the optical
impairments, in case of transceiver explicit mode, as defined in <xref target="I-D.ietf-ccamp-optical-impairment-topology-yang"/>.</t>
  </dd>
  <dt/>
  <dd>
    <t>Note that the actual portion of the spectrum occupied by an OTSi is not explicitly reported within the explicit-mode parameters because it can be calculated using the available-baud-rate, the roll-off and the min-carrier-spacing attributes.</t>
  </dd>
  <dt>transceiver-tuning-range:</dt>
  <dd>
    <t>A YANG grouping that defines the transceiver tuning range, which
includes the minimum and maximum tuning frequency, as well as the
frequency tuning granularity.</t>
  </dd>
  <dt>common-all-modes:</dt>
  <dd>
    <t>A YANG grouping used to define the common attributes used by all transceiver's modes.</t>
  </dd>
  <dt>penalty-value:</dt>
  <dd>
    <t>A YANG grouping to define the penalty value for multiple penalty types, such as Chromatic Dispersion (CD), Polarization Mode Dispersion (PMD), as defined in <xref target="ITU-T_G.666"/> or Polarization Dependent Loss(PDL)</t>
  </dd>
</dl>

</section>
<section anchor="label-range"><name>WDM Label and Label Range</name>

<t>As described in <xref target="RFC6205"/> and <xref target="RFC7699"/>, the WDM label represents the frequency slots assigned to a WDM Label Switched Path (LSP) on a given WDM Link, which models an Optical Multiplex Section (OMS) Media Channel Group (MCG) as described in <xref target="I-D.ietf-ccamp-optical-impairment-topology-yang"/>.</t>

<t>The same WDM label (which represents the frequency slots associated with the WDM LSP) will be assigned on all the
WDM Links along a regen-free LSP path or path segment (i.e., an LSP path or path segment which does not include any 3R regenerator). Depending on the 3R capabilities, the WDM label may or may not change at a 3R regenerator: see
<xref section="2.7" sectionFormat="of" target="I-D.ietf-ccamp-optical-impairment-topology-yang"/> for more details on 3R regenerators.</t>

<t>A frequency slot is defined in <xref target="ITU-T_G.694.1"/> as a contiguous frequency range characterized by its nominal central frequency and slot width. The frequency range allocated to a frequency slot is unavailable to other frequency slots.</t>

<t>The definition of the frequency slot depends on the WDM grid type:</t>

<t><list style="symbols">
  <t>In case of CWDM fixed-grid, defined in <xref target="ITU-T_G.694.2"/>, the frequency slot is defined by a fixed CWDM channel spacing (cwdm-ch-spc-type) and by the nominal central wavelength which is computed as described in <xref target="RFC6205"/>. The formula in <xref target="RFC6205"/> is copied here for reader convenience:</t>
</list></t>

<figure><artwork><![CDATA[
      lambda = 1471 nm + n * channel spacing (measured in nm)
]]></artwork></figure>

<ul empty="true"><li>
  <t>where 'n' is defined in <xref target="RFC6205"/> as integer (positive, negative, or 0)</t>
</li></ul>

<t><list style="symbols">
  <t>In case of DWDM fixed-grid, defined in <xref target="ITU-T_G.694.1"/>, the frequency slot is defined by a fixed DWDM channel spacing (dwdm-ch-spc-type) and by the nominal central frequency, which is computed as described in <xref target="RFC6205"/>. The formula in <xref target="RFC6205"/> is copied here for reader convenience:</t>
</list></t>

<figure><artwork><![CDATA[
      f = 193100.000 GHz + n * channel spacing (measured in GHz)
]]></artwork></figure>

<ul empty="true"><li>
  <t>where 'n' is defined in <xref target="RFC6205"/> as integer (positive, negative, or 0)</t>
</li></ul>

<t><list style="symbols">
  <t>In case of DWDM flexible-grid, defined in <xref target="ITU-T_G.694.1"/>, the frequency slot is defined by the slot width and by the nominal central frequency, which are computed, based on the slot width granularity (SWG, fixed at 12.5GHz in <xref target="ITU-T_G.694.1"/>), and of the nominal central frequency granularity (NCFG, fixed at 6.25GHz in <xref target="ITU-T_G.694.1"/>) respectively, as described in <xref target="RFC7698"/> and <xref target="RFC7699"/>. The formulas in <xref target="RFC7699"/> can be generalized as follows:</t>
</list></t>

<figure><artwork><![CDATA[
      SW = m * SWG (measured in GHz)
      f = 193100.000 GHz + N * NCFG (measured in GHz)
]]></artwork></figure>

<ul empty="true"><li>
  <t>where 'n' is defined in <xref target="RFC7699"/> as integer (positive, negative, or 0) and 'm' is defined in <xref target="RFC7698"/> as an integer greater than or equal to 1.</t>
</li></ul>

<t>The definition of the channel spacing, NCFG and SWG in the YANG model have been generalized to support modelling of vendor-specific values (e.g., finer vendor-specific granularity for NCFG and SWG).</t>

<t>The WDM Label Range represents the frequency slots that are available for WDM LSPs to be set up over a given WDM Link.</t>

<t>The WDM Label Range is defined by augmenting the label-restriction list, defined in <xref target="I-D.ietf-teas-rfc8776-update"/>, with WDM technology-specific attributes, using the l0-label-range-info grouping (for WSON only models) or the flexi-grid-label-range-info grouping (for DWDM flexible-grid only models) or the wdm-label-range-info grouping (for models that support both WSON and DWDM flexible-grid).</t>

<t>Each entry in the label-restriction list represents either the range of the available central wavelength values (in case of CWDM fixed-grid) or the range of the available nominal central frequencies values (in case of DWDM fixed or flexible grids): the grid-type attribute defines the type of grid for each entry of the list.</t>

<t>In case of DWDM flexible grid, each entry in the label-restriction list also represents the range of the supported slot width values
based on the following attributes, defined based on concepts used in <xref target="RFC7699"/>:</t>

<t><list style="symbols">
  <t>slot-width-granularity, which represents the minimum space between slot widths;</t>
  <t>min-slot-width-factor: a multiplier of the slot width granularity, indicating the minimum slot width supported by each entry in the label-restriction list;</t>
  <t>max-slot-width-factor: a multiplier of the slot width granularity, indicating the maximum slot width supported by each entry in the label-restriction list.</t>
</list></t>

<t>Each entry of the label-restriction list, as defined in <xref target="I-D.ietf-teas-rfc8776-update"/>, defines a label-start, a label-end, a label-step and a range-bitmap.</t>

<t>The label-start and label-end definitions, when used for representing WDM label range, are augmented with WDM technology-specific attributes, using the wson-label-start-end grouping (for WSON only models) or the flexi-grid-label-start-end grouping (for DWDM flexible-grid only models) or the wdm-label-start-end grouping (for models that support both WSON and DWDM flexible-grid).</t>

<t>The label-step definition, when used for representing WDM label range, is augmented with WDM technology-specific attributes, using the wson-label-step grouping (for WSON only models) or the flexi-grid-label-step grouping (for DWDM flexible-grid only models) or the wdm-label-step grouping (for models that support both WSON and DWDM flexible-grid). The label-step definition for WDM depends on the WDM grid type:</t>

<t><list style="symbols">
  <t>For CWDM and DWDM fixed grids, it describes the channel spacing, as defined in <xref target="RFC6205"/>;</t>
  <t>For DWDM flexible grids, it describes the nominal central frequency granularity (e.g., 6,25 GHz) as well as the multiplier for the supported values of n, as defined in <xref target="RFC7699"/>.</t>
</list></t>

</section>
</section>
<section anchor="yang-code"><name>YANG Module for Layer 0 Types</name>

<t>This YANG module references <xref target="RFC6205"/>, <xref target="RFC7689"/>, <xref target="RFC7699"/>, <xref target="RFC8363"/>, <xref target="RFC9093"/>, <xref target="ITU-T_G.666"/>, <xref target="ITU-T_G.694.1"/>, <xref target="ITU-T_G.694.2"/>, <xref target="ITU-T_G.698.2"/>, <xref target="ITU-T_G.709"/>, <xref target="ITU-T_G.709.2"/>, <xref target="ITU-T_G.709.3"/>, <xref target="ITU-T_G.959.1"/> <xref target="ITU-T_G.975"/>, <xref target="ITU-T_G.975.1"/>, <xref target="ITU-T_G.977.1"/>, <xref target="ITU-T_G.9700"/> and <xref target="OIF_400ZR"/>.</t>

<figure title="Layer 0 Types YANG module" anchor="fig-yang-code"><sourcecode type="yang" markers="true" name="ietf-layer0-types@2025-10-02.yang"><![CDATA[
module ietf-layer0-types {
  yang-version 1.1;
  namespace "urn:ietf:params:xml:ns:yang:ietf-layer0-types";
  prefix l0-types;

  import ietf-te-types {
    prefix te-types;
    reference
      "RFC YYYY: Common YANG Data Types for Traffic Engineering";
  }

  organization
    "IETF CCAMP Working Group";
  contact
    "WG Web:  <https://datatracker.ietf.org/wg/ccamp/>
     WG List: <mailto:ccamp@ietf.org>

     Editor:  Dieter Beller
              <mailto:Dieter.Beller@nokia.com>

     Editor:  Sergio Belotti
              <mailto:Sergio.Belotti@nokia.com>

     Editor:  Italo Busi
              <mailto:Italo.Busi@huawei.com>

     Editor:  Haomian Zheng
              <mailto:zhenghaomian@huawei.com>";
  description
    "This module defines Optical Layer 0 types.  This module
     provides groupings that can be applicable to Layer 0
     Fixed Optical Networks (e.g., CWDM (Coarse Wavelength
     Division Multiplexing) and DWDM (Dense Wavelength Division
     Multiplexing)) and flexi-grid optical networks.

     Copyright (c) 2025 IETF Trust and the persons identified
     as authors of the code.  All rights reserved.

     Redistribution and use in source and binary forms, with
     or without modification, is permitted pursuant to, and
     subject to the license terms contained in, the Revised
     BSD License set forth in Section 4.c of the IETF Trust's
     Legal Provisions Relating to IETF Documents
     (https://trustee.ietf.org/license-info).

     All revisions of IETF and IANA published modules can be found
     at the YANG Parameters registry group
     (https://www.iana.org/assignments/yang-parameters).

     This version of this YANG module is part of RFC XXXX; see
     the RFC itself for full legal notices.

     The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL
     NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED',
     'MAY', and 'OPTIONAL' in this document are to be interpreted as
     described in BCP 14 (RFC 2119) (RFC 8174) when, and only when,
     they appear in all capitals, as shown here.";

  revision 2025-10-02 {
    description
      "This revision adds the following new identities:
       - cwdm-ch-spc-type;
       - flexi-ncfg-type;
       - flexi-ncfg-6p25gh;
       - modulation;
       - dpsk;
       - qpsk;
       - dp-qpsk;
       - qam8;
       - dp-qam8;
       - qam16;
       - dp-qam16;
       - qam32;
       - dp-qam32;
       - qam64;
       - dp-qam64;
       - fec-type;
       - g-fec;
       - super-fec;
       - no-fec;
       - sc-fec;
       - o-fec;
       - c-fec;
       - line-coding;
       - nrz-2p5g;
       - nrz-otu1;
       - nrz-10g;
       - nrz-otu2;
       - otl4.4-sc;
       - foic1.4-sc;
       - wavelength-assignment;
       - first-fit-wavelength-assignment;
       - random-wavelength-assignment;
       - least-loaded-wavelength-assignment;
       - lower-first-wavelength-assignment;
       - upper-first-wavelength-assignment;
       - type-power-mode;
       - power-spectral-density;
       - carrier-power;
       - switching-wson-lsc;
       - switching-flexi-grid-lsc.

       This revision adds the following new data types:
       - standard-mode
       - organization-identifier
       - operational-mode
       - frequency-thz
       - frequency-ghz
       - snr
       - snr-or-null
       - decimal-2
       - decimal-2-or-null
       - power-gain
       - power-gain-or-null
       - power-loss
       - power-loss-or-null
       - power-ratio
       - power-ratio-or-null
       - power-dbm
       - power-dbm-or-null
       - decimal-5
       - decimal-5-or-null
       - psd
       - psd-or-null.

       This revision adds the following new groupings:
       - wdm-label-start-end;
       - wdm-label-step;
       - wdm-label-hop;
       - wdm-label-range-info;
       - transceiver-capabilities;
       - standard-mode;
       - organizational-mode;
       - penalty-value;
       - explicit-mode;
       - common-standard-organizational-mode;
       - transceiver-tuning-range;
       - common-all-mode;
       - common-transceiver-param;
       - common-transceiver-configured-param;
       - common-transceiver-readonly-param;
       - tunnel-attributes;
       - frequency-range;
       - frequency-range-with-identifier;
       - path-constraints;
       - path-properties.

       The default value of the min-slot-width-factor data node
       within flexi-grid-label-range-info grouping has been removed
       (bug fixing).
      ";
    reference
      "RFC XXXX: Common YANG Data Types for Layer 0 Optical
       Networks";
  }
  revision 2021-08-13 {
    description
      "Initial version";
    reference
      "RFC 9093: A YANG Data Model for Layer 0 Types";
  }

  /*
   * Identities
   */

  identity l0-grid-type {
    description
      "Base identity for the WDM grid types.";
    reference
      "RFC 6205: Generalized Labels for Lambda-Switch-Capable
                 (LSC), Label Switching Routers
       ITU-T G.694.2 (12/2003): Spectral grids for WDM applications:
                CWDM wavelength grid";
  }

  identity wson-grid-cwdm {
    base l0-grid-type;
    description
      "Coarse Wavelength Division Multiplexing (CWDM) grid.";
    reference
      "RFC 6205: Generalized Labels for Lambda-Switch-Capable (LSC)
                 Label Switching Routers
       ITU-T G.694.2 (12/2003): Spectral grids for WDM applications:
                 CWDM wavelength grid";
  }

  identity wson-grid-dwdm {
    base l0-grid-type;
    description
      "Fixed Dense Wavelength Division Multiplexing (DWDM) grid.";
    reference
      "RFC 6205: Generalized Labels for Lambda-Switch-Capable
                 (LSC), Label Switching Routers
       ITU-T G.694.1 (10/2020): Spectral grids for WDM applications:
                 DWDM frequency grid, Clause 7.";
  }

  identity flexi-grid-dwdm {
    base l0-grid-type;
    description
      "Flexible Dense Wavelength Division Multiplexing (DWDM) grid
       (flexi-grid).";
    reference
      "RFC 7699: Generalized Labels for the Flexi-Grid in Lambda
                 Switch Capable (LSC) Label Switching Routers
       ITU-T G.694.1 (10/2020): Spectral grids for WDM applications:
                DWDM frequency grid, Clause 8";
  }

  identity cwdm-ch-spc-type {
    description
      "Base identity for CWDM channel-spacing types.";
    reference
      "RFC 6205: Generalized Labels for Lambda-Switch-Capable (LSC)
                 Label Switching Routers, Section 3.3
       ITU-T G.694.2 (12/2003): Spectral grids for WDM applications:
                 CWDM wavelength grid";
  }

  identity cwdm-20nm {
    base cwdm-ch-spc-type;
    description
      "20nm channel spacing";
    reference
      "RFC 6205: Generalized Labels for Lambda-Switch-Capable (LSC)
                 Label Switching Routers, Section 3.3
       ITU-T G.694.2 (12/2003): Spectral grids for WDM applications:
                CWDM wavelength grid";
  }

  identity dwdm-ch-spc-type {
    description
      "Base identity for DWDM channel-spacing types.";
    reference
      "RFC 6205: Generalized Labels for Lambda-Switch-Capable (LSC)
                 Label Switching Routers, Section 3.2
       ITU-T G.694.1 (10/2020): Spectral grids for WDM applications:
                 DWDM frequency grid";
  }

  identity dwdm-100ghz {
    base dwdm-ch-spc-type;
    description
      "100 GHz channel spacing.";
    reference
      "RFC 6205: Generalized Labels for Lambda-Switch-Capable (LSC)
                 Label Switching Routers, Section 3.2
       ITU-T G.694.1 (10/2020): Spectral grids for WDM applications:
                DWDM frequency grid";
  }

  identity dwdm-50ghz {
    base dwdm-ch-spc-type;
    description
      "50 GHz channel spacing.";
    reference
      "RFC 6205: Generalized Labels for Lambda-Switch-Capable (LSC)
                 Label Switching Routers, Section 3.2
       ITU-T G.694.1 (10/2020): Spectral grids for WDM applications:
                 DWDM frequency grid";
  }

  identity dwdm-25ghz {
    base dwdm-ch-spc-type;
    description
      "25 GHz channel spacing.";
    reference
      "RFC 6205: Generalized Labels for Lambda-Switch-Capable (LSC)
                 Label Switching Routers, Section 3.2
       ITU-T G.694.1 (10/2020): Spectral grids for WDM applications:
                 DWDM frequency grid";
  }

  identity dwdm-12p5ghz {
    base dwdm-ch-spc-type;
    description
      "12.5 GHz channel spacing.";
    reference
      "RFC 6205: Generalized Labels for Lambda-Switch-Capable (LSC)
                 Label Switching Routers, Section 3.2
       ITU-T G.694.1 (10/2020): Spectral grids for WDM applications:
                 DWDM frequency grid";
  }

  identity flexi-ch-spc-type {
    status obsolete;
    description
      "Flexi-grid channel-spacing type";
  }

  identity flexi-ch-spc-6p25ghz {
    base flexi-ch-spc-type;
    status obsolete;
    description
      "6.25 GHz channel spacing";
  }

  identity flexi-ncfg-type {
    description
      "Flexi-grid Nominal Central Frequency Granularity (NCFG)
       type.";
    reference
      "RFC 7699: Generalized Labels for the Flexi-Grid in Lambda
                 Switch Capable (LSC) Label Switching Routers
       ITU-T G.694.1 (10/2020): Spectral grids for WDM applications:
                 DWDM frequency grid";
  }

  identity flexi-ncfg-6p25ghz {
    base flexi-ncfg-type;
    description
      "6.25 GHz Nominal Central Frequency Granularity (NCFG).";
    reference
      "RFC 7699: Generalized Labels for the Flexi-Grid in Lambda
                 Switch Capable (LSC) Label Switching Routers
       ITU-T G.694.1 (10/2020): Spectral grids for WDM applications:
                 DWDM frequency grid";
  }

  identity flexi-slot-width-granularity {
    description
      "Flexi-grid slot width granularity.";
    reference
      "RFC 7699: Generalized Labels for the Flexi-Grid in Lambda
                 Switch Capable (LSC) Label Switching Routers
       ITU-T G.694.1 (10/2020): Spectral grids for WDM applications:
                 DWDM frequency grid";
  }

  identity flexi-swg-12p5ghz {
    base flexi-slot-width-granularity;
    description
      "12.5 GHz slot width granularity.";
    reference
      "RFC 7699: Generalized Labels for the Flexi-Grid in Lambda
                 Switch Capable (LSC) Label Switching Routers
       ITU-T G.694.1 (10/2020): Spectral grids for WDM applications:
                 DWDM frequency grid";
  }

  identity modulation {
    description
      "base identity for modulation type.";
  }

  identity dpsk {
    base modulation;
    description
      "Differential Phase Shift Keying (DPSK) modulation.";
  }

  identity qpsk {
    base modulation;
    description
      "Quadrature Phase Shift Keying (QPSK) modulation.";
  }

  identity dp-qpsk {
    base modulation;
    description
      "Dual Polarization Quadrature Phase Shift Keying
       (DP-QPSK) modulation.";
  }

  identity qam8 {
    base modulation;
    description
      "8 symbols Quadrature Amplitude Modulation (8QAM).";
  }

  identity dp-qam8 {
    base modulation;
    description
      "8 symbols Dual Polarization Quadrature Amplitude
       Modulation (DP-QAM8).";
  }

  identity qam16 {
    base modulation;
    description
      "16 symbols Quadrature Amplitude Modulation (QAM16).";
  }

  identity dp-qam16 {
    base modulation;
    description
      "16 symbols Dual Polarization Quadrature Amplitude
       Modulation (DP-QAM16).";
  }

  identity qam32 {
    base modulation;
    description
      "32 symbols Quadrature Amplitude Modulation (QAM32)";
  }

  identity dp-qam32 {
    base modulation;
    description
      "32 symbols Dual Polarization Quadrature Amplitude
       Modulation (DP-QAM32).";
  }

  identity qam64 {
    base modulation;
    description
      "64 symbols Quadrature Amplitude Modulation (QAM64).";
  }

  identity dp-qam64 {
    base modulation;
    description
      "64 symbols Dual Polarization Quadrature Amplitude
       Modulation (DP-QAM64).";
  }

  identity fec-type {
    description
      "Base identity from which specific Forward Error Correction
       (FEC) type identities are derived.";
  }

  identity g-fec {
    base fec-type;
    description
      "Generic Forward Error Correction (G-FEC).";
    reference
      "ITU-T G.975 v2.0 (10/2000): Forward error correction for
                   submarine systems.";
  }

  identity super-fec {
    base fec-type;
    description
      "Super Forward Error Correction (S-FEC).";
    reference
      "ITU-T G.975.1 v1.2 (07/2013): Forward error correction for
                     high bit-rate DWDM submarine systems.";
  }

  identity no-fec {
    base fec-type;
    description
      "No FEC.";
  }

  identity sc-fec {
    base fec-type;
    description
      "Staircase Forward Error Correction (SC-FEC).";
    reference
      "Annex A of ITU-T G.709.2 v1.1 (09/2020):OTU4 long-reach
                      interface.";
  }

  identity o-fec {
    base fec-type;
    description
      "Open Forward Error Correction (O-FEC) which reuses the
       Bose, Chaudhuri and Hocquenghem (BCH) FEC.";
    reference
      "ITU-T G.709.3 v2.1 (11/2022): Flexible OTN
               long-reach interfaces, Clause 16.4.4
       ITU-T G.709.3 v2.1 (11/2022): Flexible OTN
               long-reach interfaces, Annex E";
  }

  identity c-fec {
    base fec-type;
    description
      "Concatenated FEC (C-FEC) that combines an outer Staircase
       Forward Error Correction (SC-FEC) code and an inner
       double-extended SD-FEC (128,119) Hamming code.

       More details are provided in clause 15/G.709.3 where it is
       called DSH instead of concatenated FEC.";
    reference
      "ITU-T G.709.2 v1.1 (09/2020):OTU4 long-reach
                   interface, Annex A
       ITU-T G.709.3 v2.1 (11/2022): Flexible OTN long-reach
                   interfaces, Annex D
       ITU-T G.709.3 v2.1 (11/2022): Flexible OTN long-reach
                   interfaces, Clause 15";
  }

  identity line-coding {
    description
      "Base identity to define the bit rate/line coding of optical
       tributary signals.";
    reference
      "ITU-T G.698.2 v3.0 (11/2018): Amplified multichannel dense
                    wavelength division multiplexing applications
                    with single channel optical interfaces Optical
                    transport network, Clause 7.1.2";
  }

  identity nrz-2p5g {
    base line-coding;
    description
      "The non return to zero (NRZ) bit rate/line coding used by
       the optical tributary signal class NRZ 2.5G.";
    reference
      "ITU-T G.959.1 v8.0 (07/2018): Optical transport network
                      physical layer interfaces, Clause 3.2.6";
  }

  identity nrz-otu1 {
    base line-coding;
    description
      "The Non-Return to Zero (NRZ) bit rate/line coding used by
       the Optical channel Transport Unit order 1 (OTU1) optical
       tributary signals.";
    reference
      "ITU-T G.959.1 v8.0 (07/2018): Optical transport network
                   physical layer interfaces, Clause 7.2.1.2";
  }

  identity nrz-10g {
    description
      "The non return to zero (NRZ) bit rate/line coding used by
       the optical tributary signal class NRZ 10G.";
    reference
      "ITU-T G.959.1 v8.0 (07/2018): Optical transport network
                   physical layer interfaces, Clause 3.2.7";
  }

  identity nrz-otu2 {
    base line-coding;
    description
      "The non return to zero (NRZ) bit rate/line coding used by
       the Optical channel Transport Unit order 2 (OTU2) optical
       tributary signals.";
    reference
      "ITU-T G.959.1 v8.0 (07/2018): Optical transport network
                   physical layer interfaces, Clause 7.2.1.2";
  }

  identity otl4.4-sc {
    base line-coding;
    description
      "The bit rate/line coding used by optical tributary
       signals carrying a 100G Optical Transport Unit order 4
       (OTU4) with Staircase Forward Error Correction (SC FEC)
       from a group of four Optical Transport Lanes (OTL).";
    reference
      "ITU-T G.698.2 v3.0 (11/2018): Amplified multichannel dense
                   wavelength division multiplexing applications
                   with single channel optical interfaces Optical
                   transport network, Clause 3.2.1";
  }

  identity foic1.4-sc {
    base line-coding;
    description
      "The bit rate/line coding used by optical tributary signals
       carrying a FlexO Interface of order C1 with 4 lanes
       (FOIC1.1) with Staircase Forward Error Correction
       (SC FEC).";
    reference
      "ITU-T G.698.2 v3.0 (11/2018): Amplified multichannel dense
                   wavelength division multiplexing applications
                   with single channel optical interfaces Optical
                   transport network, Clause 3.2.1";
  }

  identity wavelength-assignment {
    description
      "Base identity for Wavelength Assignment (WA) method.";
    reference
      "RFC 7689: Signaling Extensions for Wavelength Switched
                 Optical Networks";
  }

  identity first-fit-wavelength-assignment {
    base wavelength-assignment;
    description
      "All the available wavelengths are numbered, and this WA
       method chooses the available wavelength with the lowest
       index.";
    reference
      "RFC 7689: Signaling Extensions for Wavelength Switched
                 Optical Networks";
  }

  identity random-wavelength-assignment {
    base wavelength-assignment;
    description
      "This WA method chooses an available wavelength randomly.";
    reference
      "RFC 7689: Signaling Extensions for Wavelength Switched
                 Optical Networks";
  }

  identity least-loaded-wavelength-assignment {
    base wavelength-assignment;
    description
      "This WA method selects the wavelength that
       has the largest residual capacity on the most loaded
       link along the route (in multi-fiber networks).";
    reference
      "RFC 7689: Signaling Extensions for Wavelength Switched
                 Optical Networks";
  }

  identity lower-first-wavelength-assignment {
    base wavelength-assignment;
    description
      "Allocate wavelengths in ascending order, beginning from the
       lowest frequency and progressing toward the highest
       frequency within the permissible frequency range.";
  }

  identity upper-first-wavelength-assignment {
    base wavelength-assignment;
    description
      "Allocate wavelengths in descending order, beginning from the
       highest frequency and progressing toward the lowest
       frequency within the permissible frequency range.";
  }

  identity type-power-mode {
    description
      "power equalization mode used within the
       Optical Multiplex Section (OMS) and its elements.";
  }

  identity power-spectral-density {
    base type-power-mode;
    description
      "All elements must use power spectral density (W/Hz).";
  }

  identity carrier-power {
    base type-power-mode;
    description
      "All elements must use power (dBm).";
  }

  identity switching-wson-lsc {
    base te-types:switching-lsc;
    description
      "Wavelength Switched Optical Network Lambda-Switch Capable
       (WSON-LSC).";
    reference
      "RFC 7688: GMPLS OSPF Enhancement for Signal and Network
                 Element Compatibility for Wavelength Switched
                 Optical Networks, Section 3";
  }

  identity switching-flexi-grid-lsc {
    base te-types:switching-lsc;
    description
      "Flexi-grid Lambda-Switch Capable (Flexi-Grid-LSC).";
    reference
      "RFC 8363: GMPLS OSPF-TE Extensions in Support of Flexi-Grid
                 Dense Wavelength Division Multiplexing (DWDM)
                 Networks, Section 4.1";
  }

  /*
   * Typedefs
   */

  typedef dwdm-n {
    type int16;
    description
      "The given value 'N' is used to determine the nominal central
       frequency.

       The nominal central frequency, 'f', is defined by:
         f = 193100.000 GHz + N x channel spacing (measured in GHz),

       where 193100.000 GHz (193.100000 THz) is the ITU-T 'anchor
       frequency' for transmission over the DWDM grid, and where
       'channel spacing' is defined by the dwdm-ch-spc-type.";
    reference
      "RFC6205: Generalized Labels for Lambda-Switch-Capable (LSC)
                Label Switching Routers
       ITU-T G.694.1 (10/2020): Spectral grids for WDM applications:
                DWDM frequency grid";
  }

  typedef cwdm-n {
    type int16;
    description
      "The given value 'N' is used to determine the nominal central
       wavelength.

       The nominal central wavelength is defined by:
         Wavelength = 1471 nm + N x channel spacing (measured in nm)

       where 1471 nm is the conventional 'anchor wavelength' for
       transmission over the CWDM grid, and where 'channel spacing'
       is defined by the cwdm-ch-spc-type.";
    reference
      "RFC 6205: Generalized Labels for Lambda-Switch-Capable (LSC)
                 Label Switching Routers
       ITU-T G.694.2 (12/2003): Spectral grids for WDM applications:
                 CWDM wavelength grid";
  }

  typedef flexi-n {
    type int16;
    description
      "The given value 'N' is used to determine the nominal central
       frequency.

       The nominal central frequency, 'f', is defined by:
         f = 193100.000 GHz + N x NCFG (measured in GHz),

       where 193100.000 GHz (193.100000 THz) is the ITU-T 'anchor
       frequency' for transmission over the DWDM grid, and where
       NCFG is defined by the flexi-ncfg-type.";
    reference
      "RFC 7699: Generalized Labels for the Flexi-Grid in Lambda
                 Switch Capable (LSC) Label Switching Routers
       ITU-T G.694.1 (10/2020): Spectral grids for WDM applications:
                 DWDM frequency grid";
  }

  typedef flexi-m {
    type uint16;
    description
      "The given value 'M' is used to determine the slot width.

       A slot width is defined by:
         slot width = M x SWG (measured in GHz),

       where SWG is defined by the flexi-slot-width-granularity.";
    reference
      "RFC 7699: Generalized Labels for the Flexi-Grid in Lambda
                 Switch Capable (LSC) Label Switching Routers
       ITU-T G.694.1 (10/2020): Spectral grids for WDM applications:
                 DWDM frequency grid";
  }

  typedef standard-mode {
    type string;
    description
      "Identifies an ITU-T G.698.2 standard application code.

       It MUST be a string with a format that follows the
       nomenclature defined in clause 5.3 of ITU-T G.698.2.";
    reference
      "ITU-T G.698.2 v3.0 (11/2018): Amplified multichannel dense
                   wavelength division multiplexing applications
                   with single channel optical interfaces Optical
                   transport network, Clause 5.3";
  }

  typedef organization-identifier {
    type string;
    description
      "vendor/organization identifier that uses a private mode
       out of already defined in G.698.2 ITU-T application-code";
    reference
      "RFC ZZZZ: A YANG Data Model for Optical Impairment-aware
                 Topology, Section 2.5.2";
  }

  typedef operational-mode {
    type string;
    description
      "Identifies an organization (e.g., vendor) specific mode.

       The format of the string has to be defined by the
       organization which is responsible for defining the
       corresponding optical interface specification.";
    reference
      "RFC ZZZZ: A YANG Data Model for Optical Impairment-aware
                 Topology, Section 2.5.2";
  }

  typedef frequency-thz {
    type decimal64 {
      fraction-digits 9;
    }
    units "THz";
    description
      "The DWDM frequency in THz, e.g., 193.112500000";
  }

  typedef frequency-ghz {
    type decimal64 {
      fraction-digits 6;
    }
    units "GHz";
    description
      "The DWDM frequency in GHz, e.g., 193112.500000.";
  }

  typedef snr {
    type decimal-2;
    units "dB@0.1nm";
    description
      "(Optical) Signal to Noise Ratio measured over 0.1 nm
       resolution bandwidth.";
    reference
      "ITU-T G.977.1 (02/2021): Transverse compatible dense
                 wavelength division multiplexing applications for
                 repeatered optical fibre submarine cable systems";
  }

  typedef snr-or-null {
    type union {
      type snr;
      type empty;
    }
    description
      "(Optical) Signal to Noise Ratio measured over 0.1 nm
       resolution bandwidth, when known, or an empty value when
       unknown.";
  }

  typedef decimal-2 {
    type decimal64 {
      fraction-digits 2;
    }
    description
      "A decimal64 value with two fractional digits.";
  }

  typedef decimal-2-or-null {
    type union {
      type decimal-2;
      type empty;
    }
    description
      "A decimal64 value with two digits, when the value is known or
       an empty value when the value is not known.";
  }

  typedef power-gain {
    type decimal-2 {
      range "0..max";
    }
    units "dB";
    description
      "The gain in dB.";
  }

  typedef power-gain-or-null {
    type union {
      type power-gain;
      type empty;
    }
    description
      "The gain in dB, when it is known or an empty
       value when the power gain/loss is not known.";
  }

  typedef power-loss {
    type decimal-2 {
      range "0..max";
    }
    units "dB";
    description
      "The power attenuation in dB.";
  }

  typedef power-loss-or-null {
    type union {
      type power-loss;
      type empty;
    }
    description
      "The power attenuation in dB, when it is known or an empty
       value when the loss is not known.";
  }

  typedef power-ratio {
    type decimal-2;
    units "dB";
    description
      "The power difference in dB.";
  }

  typedef power-ratio-or-null {
    type union {
      type power-ratio;
      type empty;
    }
    description
      "The power difference in dB, when it is known or an empty
       value when the difference is not known.";
  }

  typedef power-dbm {
    type decimal-2;
    units "dBm";
    description
      "The power in dBm.";
  }

  typedef power-dbm-or-null {
    type union {
      type power-dbm;
      type empty;
    }
    description
      "The power in dBm, when it is known or an empty value when the
       power is not known.";
  }

  typedef decimal-5 {
    type decimal64 {
      fraction-digits 5;
    }
    description
      "A decimal64 value with five fractional digits.";
  }

  typedef decimal-5-or-null {
    type union {
      type decimal-5;
      type empty;
    }
    description
      "A decimal64 value with five digits, when the value is known
       or an empty value when the value is not known.";
  }

  typedef psd {
    type decimal64 {
      fraction-digits 16;
    }
    units "W/Hz";
    description
      "The power spectral density (PSD).

       Typical value : 3.9 E-14, resolution 0.1nW/MHz.";
    reference
      "ITU-T G.9700 (07/2019): Fast access to subscriber terminals
                    (G.fast) - Power spectral density specification";
  }

  typedef psd-or-null {
    type union {
      type psd;
      type empty;
    }
    description
      "The PSD, when it is known or an empty value when the PSD is
       not known.";
  }

  typedef decimal-18 {
    type decimal64 {
      fraction-digits 18;
    }
    description
      "A decimal64 value with fractional eighteen digits.";
  }

  typedef decimal-18-or-null {
    type union {
      type decimal-18;
      type empty;
    }
    description
      "A decimal64 value with eighteen digits, when the value is
       known or an empty value when the value is not known.";
  }

  /*
   * Groupings
   */

  grouping l0-label-range-info {
    description
      "Common grouping used to define WSON, flexi-grid and WDM label
       ranges.

       When used to define a WSON label range, this grouping SHOULD
       be used together with the wson-label-start-end and
       wson-label-step groupings to provide WSON technology-specific
       label information to the models which use the
       label-restriction-info grouping defined in the module
       ietf-te-types.";
    leaf grid-type {
      type identityref {
        base l0-grid-type;
      }
      description
        "The type of WDM grid.";
      reference
        "RFC 6205: Generalized Labels for Lambda-Switch-Capable
                   (LSC), Label Switching Routers
         ITU-T G.694.2 (12/2003): Spectral grids for WDM
                   applications: CWDM wavelength grid";
    }
    leaf priority {
      type uint8;
      description
        "Priority in Interface Switching Capability Descriptor
         (ISCD).";
      reference
        "RFC 4203: OSPF Extensions in Support of Generalized
                   Multi-Protocol Label Switching (GMPLS)";
    }
  }

  grouping wson-label-start-end {
    description
      "The WSON label-start or label-end used to specify WSON label
       range.

       This grouping is dependent on the range-type defined in the
       l0-label-range-info grouping.

       This grouping SHOULD be used together with the
       l0-label-range-info and wson-label-step groupings to provide
       WSON technology-specific label information to the models which
       use the label-restriction-info grouping defined in the module
       ietf-te-types.";
    reference
      "RFC 6205: Generalized Labels for Lambda-Switch-Capable (LSC)
                 Label Switching Routers";
    choice grid-type {
      description
        "Label for DWDM or CWDM grid";
      case dwdm {
        leaf dwdm-n {
          when 'derived-from-or-self(../../../grid-type, '
             + '"l0-types:wson-grid-dwdm")' {
            description
              "Valid only when grid type is DWDM.";
          }
          type dwdm-n;
          description
            "The central frequency of DWDM.";
          reference
            "RFC 6205: Generalized Labels for Lambda-Switch-Capable
                       (LSC) Label Switching Routers";
        }
      }
      case cwdm {
        leaf cwdm-n {
          when 'derived-from-or-self(../../../grid-type, '
             + '"l0-types:wson-grid-cwdm")' {
            description
              "Valid only when grid type is CWDM.";
          }
          type cwdm-n;
          description
            "Channel wavelength computing input.";
          reference
            "RFC 6205: Generalized Labels for Lambda-Switch-Capable
                      (LSC) Label Switching Routers";
        }
      }
    }
  }

  grouping wson-label-step {
    description
      "Label step information for WSON.

       This grouping is dependent on the range-type defined in the
       l0-label-range-info grouping.

       This grouping SHOULD be used together with the
       l0-label-range-info and wson-label-start-end groupings to
       provide WSON technology-specific label information to the
       models which use the label-restriction-info grouping defined
       in the module ietf-te-types.";
    reference
      "RFC 6205: Generalized Labels for Lambda-Switch-Capable (LSC)
                 Label Switching Routers
       ITU-T G.694.2 (12/2003): Spectral grids for WDM applications:
                CWDM wavelength grid";
    choice l0-grid-type {
      description
        "Grid type: DWDM, CWDM, etc.";
      case dwdm {
        leaf wson-dwdm-channel-spacing {
          when 'derived-from-or-self(../../grid-type, '
             + '"l0-types:wson-grid-dwdm")' {
            description
              "Valid only when grid type is DWDM.";
          }
          type identityref {
            base dwdm-ch-spc-type;
          }
          description
            "Label-step is the channel spacing (GHz), e.g., 100.000,
             50.000, 25.000, or 12.500 GHz for DWDM.";
          reference
            "RFC 6205: Generalized Labels for Lambda-Switch-Capable
                       (LSC) Label Switching Routers";
        }
      }
      case cwdm {
        leaf wson-cwdm-channel-spacing {
          when 'derived-from-or-self(../../grid-type, '
             + '"l0-types:wson-grid-cwdm")' {
            description
              "Valid only when grid type is CWDM.";
          }
          type identityref {
            base cwdm-ch-spc-type;
          }
          description
            "Label-step is the channel spacing (nm), i.e., 20 nm
             for CWDM, which is the only value defined for CWDM.";
          reference
            "RFC 6205: Generalized Labels for Lambda-Switch-Capable
                      (LSC) Label Switching Routers";
        }
      }
    }
  }

  grouping wson-label-hop {
    description
      "Generic label-hop information for WSON.";
    reference
      "RFC 6205: Generalized Labels for Lambda-Switch-Capable (LSC)
                 Label Switching Routers";
    choice grid-type {
      description
        "Label for DWDM or CWDM grid.";
      case dwdm {
        choice single-or-super-channel {
          description
            "Single or super channel.";
          case single {
            leaf dwdm-n {
              type dwdm-n;
              description
                "The given value 'N' is used to determine the
                 nominal central frequency.";
              reference
                "ITU-T G.694.1 (10/2020): Spectral grids for WDM
                               applications: DWDM frequency grid";
            }
          }
          case super {
            leaf-list subcarrier-dwdm-n {
              type dwdm-n;
              description
                "The given values 'N' are used to determine the
                 nominal central frequency for each subcarrier
                 channel.";
              reference
                "ITU-T G.694.1 (10/2020): Spectral grids for WDM
                               applications: DWDM frequency grid";
            }
          }
        }
      }
      case cwdm {
        leaf cwdm-n {
          type cwdm-n;
          description
            "The given value 'N' is used to determine the nominal
             central wavelength.";
          reference
            "RFC 6205: Generalized Labels for Lambda-Switch-Capable
                       (LSC) Label Switching Routers";
        }
      }
    }
  }

  grouping flexi-grid-label-range-info {
    description
      "Flexi-grid-specific label range related information.

       This grouping SHOULD be used together with the
       flexi-grid-label-start-end and flexi-grid-label-step groupings
       to provide flexi-grid technology-specific label information to
       the models which use the label-restriction-info grouping
       defined in the module ietf-te-types.";
    uses l0-label-range-info;
    container flexi-grid {
      description
        "flexi-grid definition";
      leaf slot-width-granularity {
        type identityref {
          base flexi-slot-width-granularity;
        }
        default "l0-types:flexi-swg-12p5ghz";
        description
          "Minimum space between slot widths.";
        reference
          "RFC 8363: GMPLS OSPF-TE Extensions in Support of
                     Grid Dense Wavelength Division Multiplexing
                     (DWDM) Networks";
      }
      leaf min-slot-width-factor {
        type uint16 {
          range "1..max";
        }
        description
          "A multiplier of the slot width granularity, indicating
           the minimum slot width supported by an optical port.

           Minimum slot width is calculated by:
             Minimum slot width (GHz) =
               min-slot-width-factor * slot-width-granularity.";
        reference
          "RFC 8363: GMPLS OSPF-TE Extensions in Support of Flexi-
                     Grid Dense Wavelength Division Multiplexing
                     (DWDM) Networks";
      }
      leaf max-slot-width-factor {
        type uint16 {
          range "1..max";
        }
        must '. >= ../min-slot-width-factor' {
          error-message
            "Maximum slot width must be greater than or equal to
             minimum slot width.";
        }
        description
          "A multiplier of the slot width granularity, indicating
           the maximum slot width supported by an optical port.

           Maximum slot width is calculated by:
             Maximum slot width (GHz) =
               max-slot-width-factor * slot-width-granularity

           If specified, maximum slot width must be greater than or
           equal to minimum slot width.  If not specified, maximum
           slot width is equal to minimum slot width.";
        reference
          "RFC 8363: GMPLS OSPF-TE Extensions in Support of Flexi-
                     Grid Dense Wavelength Division Multiplexing
                     (DWDM) Networks";
      }
    }
  }

  grouping flexi-grid-label-start-end {
    description
      "Common grouping used to define the value 'N' which is used to
       determine the nominal central frequency (e.g., as the
       flexi-grid label-start or label-end used to specify flexi-grid
       label range).

       When used to define a flexi-grid label range, this grouping
       SHOULD be used together with the flexi-grid-label-range-info
       and flexi-grid-label-step groupings to provide flexi-grid
       technology-specific label information to the models which use
       the label-restriction-info grouping defined in the module
       ietf-te-types.";
    reference
      "RFC 7699: Generalized Labels for the Flexi-Grid in Lambda
                 Switch Capable (LSC) Label Switching Routers";
    leaf flexi-n {
      type flexi-n;
      description
        "The given value 'N' is used to determine the nominal
         central frequency.

         As described in Section 3.1 of RFC 8363, the range of
         available nominal central frequencies are advertised for
         m=1, which means that for an available central frequency n,
         the frequency slot from central frequency n-1 to central
         frequency n+1 is available.";
    }
  }

  grouping flexi-grid-label-step {
    description
      "Label step information for flexi-grid label ranges.

       This grouping SHOULD be used together with the
       flexi-grid-label-range-info and flexi-grid-label-start-end
       groupings to provide flexi-grid technology-specific label
       information to the models which use the label-restriction-info
       grouping defined in the module ietf-te-types.";
    leaf flexi-grid-channel-spacing {
      type identityref {
        base flexi-ch-spc-type;
      }
      default "l0-types:flexi-ch-spc-6p25ghz";
      status obsolete;
      description
        "Label-step is the nominal central frequency granularity
         (GHz), e.g., 6.25 GHz.";
      reference
        "RFC 7699: Generalized Labels for the Flexi-Grid in Lambda
                   Switch Capable (LSC) Label Switching Routers";
    }
    leaf flexi-ncfg {
      type identityref {
        base flexi-ncfg-type;
      }
      default "l0-types:flexi-ncfg-6p25ghz";
      description
        "Label-step is the nominal central frequency granularity
         (GHz), e.g., 6.25 GHz.";
      reference
        "RFC 7699: Generalized Labels for the Flexi-Grid in Lambda
                   Switch Capable (LSC) Label Switching Routers";
    }
    leaf flexi-n-step {
      type uint8;
      description
        "This attribute defines the multiplier for the supported
         values of 'N'.

         For example, given a grid with a nominal central frequency
         granularity of 6.25 GHz, the granularity of the supported
         values of the nominal central frequency could be 12.5 GHz.
         In this case, the values of flexi-n should be even and this
         constraint is reported by setting the flexi-n-step to 2.

         This attribute is also known as central frequency
         granularity.";
      reference
        "RFC 8363: GMPLS OSPF-TE Extensions in Support of Flexi-Grid
                   Dense Wavelength Division Multiplexing (DWDM)
                   Networks";
    }
  }

  grouping flexi-grid-frequency-slot {
    description
      "Flexi-grid frequency slot grouping.";
    reference
      "RFC 7699: Generalized Labels for the Flexi-Grid in Lambda
                 Switch Capable (LSC) Label Switching Routers";
    uses flexi-grid-label-start-end;
    leaf flexi-m {
      type flexi-m;
      description
        "The given value 'M' is used to determine the slot width.";
    }
  }

  grouping flexi-grid-label-hop {
    description
      "Generic label-hop information for flexi-grid.";
    reference
      "RFC 7699: Generalized Labels for the Flexi-Grid in Lambda
                 Switch Capable (LSC) Label Switching Routers";
    choice single-or-super-channel {
      description
        "single or super channel";
      case single {
        uses flexi-grid-frequency-slot;
      }
      case super {
        status obsolete;
        list subcarrier-flexi-n {
          key "flexi-n";
          status obsolete;
          description
            "List of subcarrier channels for flexi-grid super
             channel.";
          uses flexi-grid-frequency-slot {
            status obsolete;
          }
        }
      }
      case multi {
        container frequency-slots {
          description
            "The top level container for the list of frequency
             slots used for flexi-grid super channel.";
          list frequency-slot {
            key "flexi-n";
            min-elements 2;
            description
              "List of frequency slots used for flexi-grid super
               channel.";
            uses flexi-grid-frequency-slot;
          }
        }
      }
    }
  }

  grouping wdm-label-range-info {
    description
      "Label range information for WDM.

       This grouping SHOULD be used together with the
       wdm-label-start-end and wdm-label-step groupings to provide
       WDM technology-specific label information to the models which
       use the label-restriction-info grouping defined in the module
       ietf-te-types.";
    container wdm-label-range {
      description
        "Label range information for WDM.";
      uses l0-label-range-info;
      container flexi-grid {
        when 'derived-from-or-self(../grid-type, '
           + '"l0-types:flexi-grid-dwdm")' {
          description
            "Applicable only when the grid type is flexi-grid-dwdm.";
        }
        description
          "flexi-grid definition.";
        leaf slot-width-granularity {
          type identityref {
            base flexi-slot-width-granularity;
          }
          default "l0-types:flexi-swg-12p5ghz";
          description
            "Minimum space between slot widths.";
          reference
            "RFC 8363: GMPLS OSPF-TE Extensions in Support of Flexi-
                      Grid Dense Wavelength Division Multiplexing
                      (DWDM) Networks";
        }
        leaf min-slot-width-factor {
          type uint16 {
            range "1..max";
          }
          description
            "A multiplier of the slot width granularity, indicating
             the minimum slot width supported by an optical port.

             Minimum slot width is calculated by:
                Minimum slot width (GHz) =
                  min-slot-width-factor * slot-width-granularity.";
          reference
            "RFC 8363: GMPLS OSPF-TE Extensions in Support of Flexi-
                      Grid Dense Wavelength Division Multiplexing
                      (DWDM) Networks";
        }
        leaf max-slot-width-factor {
          type uint16 {
            range "1..max";
          }
          must '. >= ../min-slot-width-factor' {
            error-message
              "Maximum slot width must be greater than or equal to
               minimum slot width.";
          }
          description
            "A multiplier of the slot width granularity, indicating
             the maximum slot width supported by an optical port.

             Maximum slot width is calculated by:
                Maximum slot width (GHz) =
                  max-slot-width-factor * slot-width-granularity

             If specified, maximum slot width must be greater than or
             equal to minimum slot width.  If not specified, maximum
             slot width is equal to minimum slot width.";
          reference
            "RFC 8363: GMPLS OSPF-TE Extensions in Support of Flexi-
                      Grid Dense Wavelength Division Multiplexing
                      (DWDM) Networks";
        }
      }
    }
  }

  grouping wdm-label-start-end {
    description
      "The WDM label-start or label-end used to specify DWDM and
       CWDM label ranges.

       This grouping is dependent on the range-type defined in the
       wdm-label-range-info grouping.

       This grouping SHOULD be used together with the
       wdm-label-range-info and wdm-label-step groupings to provide
       WDM technology-specific label information to the models which
       use the label-restriction-info grouping defined in the module
       ietf-te-types.";
    reference
      "RFC 6205: Generalized Labels for Lambda-Switch-Capable (LSC)
                 Label Switching Routers
       RFC 7699: Generalized Labels for the Flexi-Grid in Lambda
                 Switch Capable (LSC) Label Switching Routers";
    container wdm-label {
      description
        "Label start or label end for WDM.

         The format of the label depends on the type of WDM grid
         specified in the 'grid-type' leaf defined in the
         wdm-label-range-info grouping.";
      leaf dwdm-n {
        when 'derived-from-or-self(../../../../wdm-label-range'
           + '/grid-type, "l0-types:wson-grid-dwdm")' {
          description
            "Valid only when grid type is a fixed DWDM grid.";
        }
        type dwdm-n;
        description
          "The given value 'N' is used to determine the
           nominal central frequency on a DWDM fixed grid.";
        reference
          "RFC 6205: Generalized Labels for Lambda-Switch-Capable
                    (LSC) Label Switching Routers";
      }
      leaf cwdm-n {
        when 'derived-from-or-self(../../../../wdm-label-range'
           + '/grid-type, "l0-types:wson-grid-cwdm")' {
          description
            "Valid only when grid type is a CWDM grid.";
        }
        type cwdm-n;
        description
          "The given value 'N' is used to determine the nominal
           central wavelength on a CWDM fixed grid.";
        reference
          "RFC 6205: Generalized Labels for Lambda-Switch-Capable
                    (LSC) Label Switching Routers";
      }
      uses flexi-grid-label-start-end {
        when 'derived-from-or-self(../../../wdm-label-range'
           + '/grid-type, "l0-types:flexi-grid-dwdm")' {
          description
            "Valid only when grid type is a flexible DWDM grid.";
        }
      }
    }
  }

  grouping wdm-label-step {
    description
      "The WDM label-step used to specify DWDM and CWDM label
       ranges.

       This grouping is dependent on the range-type defined in the
       wdm-label-range-info grouping.

       This grouping SHOULD be used together with the
       wdm-label-range-info and wdm-label-start-end groupings to
       provide WDM technology-specific label information to the
       models which use the label-restriction-info grouping defined
       in the module ietf-te-types.";
    reference
      "RFC 6205: Generalized Labels for Lambda-Switch-Capable (LSC)
                 Label Switching Routers
       RFC 7699: Generalized Labels for the Flexi-Grid in Lambda
                 Switch Capable (LSC) Label Switching Routers
       RFC 8363: GMPLS OSPF-TE Extensions in Support of Flexi-Grid
                 Dense Wavelength Division Multiplexing (DWDM)
                 Networks";
    container wdm-label-step {
      description
        "Label step for WDM.

         The format of the label depends on the type of WDM grid
         specified in the 'grid-type' leaf defined in the
         wdm-label-range-info grouping.";
      leaf wson-dwdm-channel-spacing {
        when 'derived-from-or-self(../../../wdm-label-range'
           + '/grid-type, "l0-types:wson-grid-dwdm")' {
          description
            "Valid only when grid type is a fixed DWDM grid.";
        }
        type identityref {
          base dwdm-ch-spc-type;
        }
        description
          "The channel spacing (GHz) of a fixed DWDM grid, e.g.,
           100 GHz, 50 GHz, 25 GHz, or 12.5 GHz.";
        reference
          "RFC 6205: Generalized Labels for Lambda-Switch-Capable
                    (LSC) Label Switching Routers";
      }
      leaf wson-cwdm-channel-spacing {
        when 'derived-from-or-self(../../../wdm-label-range'
           + '/grid-type, "l0-types:wson-grid-cwdm")' {
          description
            "Valid only when grid type is a CWDM grid.";
        }
        type identityref {
          base cwdm-ch-spc-type;
        }
        description
          "The channel spacing (nm) of a fixed CWDM grid, e.g., 20nm
           (which is the only standardized value).";
        reference
          "RFC 6205: Generalized Labels for Lambda-Switch-Capable
                    (LSC) Label Switching Routers";
      }
      container flexi-grid-cfg {
        when 'derived-from-or-self(../../../wdm-label-range'
           + '/grid-type, "l0-types:flexi-grid-dwdm")' {
          description
            "Valid only when grid type is a flexible DWDM grid.";
        }
        description
          "The Central Frequency Granularity (CFG) of a flexible DWDM
           grid (flexi-grid), defined as a multiplier of the Nominal
           central frequency granularity (NCFG).";
        uses flexi-grid-label-step;
      }
    }
  }

  grouping wdm-label-hop {
    description
      "Generic label-hop information for DWDM and CWDM labels.";
    container wdm-label {
      description
        "Label hop for WDM.";
      choice grid-type {
        description
          "Label for DWDM or CWDM grid.";
        reference
          "RFC 6205: Generalized Labels for Lambda-Switch-Capable
                     (LSC) Label Switching Routers";
        case fixed-dwdm {
          choice fixed-single-or-multi-channel {
            description
              "Single channel or multichannel.";
            case single {
              leaf dwdm-n {
                type dwdm-n;
                description
                  "The given value 'N' is used to determine the
                   nominal central frequency.";
              }
            }
            case multi {
              leaf-list subcarrier-dwdm-n {
                type dwdm-n;
                min-elements 2;
                description
                  "The given values 'N' are used to determine the
                   nominal central frequency for each subcarrier
                   channel.";
                reference
                  "ITU-T G.694.1 (10/2020): Spectral grids for WDM
                              applications: DWDM frequency grid";
              }
            }
          }
        }
        case cwdm {
          leaf cwdm-n {
            type cwdm-n;
            description
              "The given value 'N' is used to determine the nominal
               central wavelength.";
            reference
              "RFC 6205: Generalized Labels for Lambda-Switch-Capable
                        (LSC) Label Switching Routers";
          }
        }
        case flexi-grid {
          uses flexi-grid-label-hop;
        }
      }
    }
  }

  grouping transceiver-capabilities {
    description
      "This grouping is intended to be used for reporting the
       capabilities of a transceiver.

       When this grouping is used, the explicit-mode container shall
       be augmented with a leafref to an explicit mode template with
       the proper XPath which depends on where this grouping is
       actually used.";
    reference
      "RFC ZZZZ: A YANG Data Model for Optical Impairment-aware
                 Topology.";
    container supported-modes {
      presence
        "When present, it indicates that the modes supported by a
         transceiver are reported.";
      config false;
      description
        "The top level container for the list supported
         transceiver's modes.";
      list supported-mode {
        key "mode-id";
        min-elements 1;
        description
          "The list of supported transceiver's modes.";
        leaf mode-id {
          type string {
            length "1..255";
          }
          description
            "An identifier for the supported transceiver's mode.";
        }
        choice mode {
          mandatory true;
          description
            "Indicates whether the transceiver's mode is a standard
             mode, an organizational mode or an explicit mode.";
          case g.698.2 {
            container g.698.2 {
              description
                "The set of attributes for a standard mode defined
                 in ITU-T G.698.2.";
              reference
                "ITU-T G.698.2 v3.0 (11/2018): Amplified multichannel
                        dense wavelength division multiplexing
                        applications with single channel optical
                        interfaces Optical transport network";
              uses standard-mode {
                refine "standard-mode" {
                  mandatory true;
                }
              }
              uses common-standard-organizational-mode;
              uses common-all-modes;
            }
          }
          case organizational-mode {
            container organizational-mode {
              description
                "The set of attributes for an organizational mode.";
              uses organizational-mode {
                refine "operational-mode" {
                  mandatory true;
                }
                refine "organization-identifier" {
                  mandatory true;
                }
              }
              uses common-standard-organizational-mode;
              uses common-all-modes;
            }
          }
          case explicit-mode {
            container explicit-mode {
              description
                "The set of attributes for an explicit mode.";
              uses common-all-modes;
              container compatible-modes {
                description
                  "Container for all the standard and organizational
                   modes supported by the transceiver's explicit
                   mode.";
                leaf-list supported-application-code {
                  type leafref {
                    path "../../../../supported-mode/mode-id";
                  }
                  must '../../../../'
                     + 'supported-mode[mode-id=current()]/'
                     + 'g.698.2' {
                    description
                      "The pointer is only for application codes
                       supported by transceiver.";
                  }
                  description
                    "List of pointers to the application codes
                     supported by the transceiver's explicit mode.";
                }
                leaf-list supported-organizational-mode {
                  type leafref {
                    path "../../../../supported-mode/mode-id";
                  }
                  must '../../../../'
                     + 'supported-mode[mode-id=current()]/'
                     + 'organizational-mode' {
                    description
                      "The pointer is only for organizational modes
                       supported by transceiver.";
                  }
                  description
                    "List of pointers to the organizational modes
                      supported by the transceiver's explicit mode.";
                }
              }
            }
          }
        }
      }
    }
  }

  grouping standard-mode {
    description
      "Identifies an ITU-T G.698.2 standard application code.";
    reference
      "ITU-T G.698.2 v3.0 (11/2018): Amplified multichannel dense
                 wavelength division multiplexing applications
                 with single channel optical interfaces Optical
                 transport network, Clause 5.3";
    leaf standard-mode {
      type standard-mode;
      description
        "Identifies an ITU-T G.698.2 standard application code.

         It MUST be a string with a format that follows the
         nomenclature defined in clause 5.3 of ITU-T G.698.2.";
    }
  }

  grouping organizational-mode {
    description
      "Transponder operational mode supported by organizations or
       vendor";
    reference
      "RFC ZZZZ: A YANG Data Model for Optical Impairment-aware
                  Topology, Section 2.6.2";
    leaf operational-mode {
      type operational-mode;
      description
        "configured organization- or vendor-specific
         application identifiers (AI) supported by the transponder";
    }
    leaf organization-identifier {
      type organization-identifier;
      description
        "The identifier of the organization that defines the
         organizational-mode.";
    }
  }

  grouping penalty-value {
    description
      "A common definition of the Optical Signal-to-Noise Ratio
       (OSNR) penalty value used for describing multiple penalty
       types (e.g., CD, PMD, or PDL).";
    leaf penalty-value {
      type union {
        type decimal-2 {
          range "0..max";
        }
        type empty;
      }
      units "dB";
      mandatory true;
      description
        "The OSNR penalty associated with the related optical
         impairment at the receiver, when the value is known or an
         empty value when the value is not known.";
    }
  }

  grouping explicit-mode {
    description
      "The attributes describing capabilities of an explicit
       transceiver's mode.

       This grouping also contains the list of attributes related to
       optical impairment limits for explicit mode (min OSNR,
       max PMD, max CD, max PDL, Q-factor limit, etc.).

       In case of standard and operational mode the attributes are
       implicit.";
    leaf line-coding-bitrate {
      type identityref {
        base line-coding;
      }
      config false;
      description
        "Bit rate/line coding of the optical tributary signal.";
      reference
        "ITU-T G.698.2 v3.0 (11/2018): Amplified multichannel dense
                     wavelength division multiplexing applications
                     with single channel optical interfaces Optical
                     transport network, Clause 7.1.2";
    }
    leaf bitrate {
      type uint16;
      units "Gbit/sec";
      config false;
      description
        "The gross bitrate (e.g., 100 or 200) of the optical
         tributary signal.";
    }
    leaf max-diff-group-delay {
      type decimal-2;
      units "ps";
      config false;
      description
        "The maximum Differential Group Delay (DGD)  the receiver can
         tolerate.";
    }
    leaf max-chromatic-dispersion {
      type decimal-2 {
        range "0..max";
      }
      units "ps/nm";
      config false;
      description
        "Maximum acceptable accumulated chromatic dispersion (CD) on
         the receiver at Rx-power reference point
         (rx-ref-channel-power) and in absence of other
         impairments.";
      reference
        "RFC ZZZZ: A YANG Data Model for Optical
                   Impairment-aware Topology, Section 2.6.4";
    }
    list cd-penalty {
      key "cd-value";
      config false;
      description
        "Optional penalty associated with a given accumulated
         chromatic dispersion (CD) value measured in
         absence of other impairments.

         This list of pair CD and OSNR penalty can be used to
         sample the function OSNR penalty = f(CD).";
      reference
        "RFC ZZZZ: A YANG Data Model for Optical
                   Impairment-aware Topology, Section 2.6.4";
      leaf cd-value {
        type decimal-2;
        units "ps/nm";
        description
          "The Chromatic Dispersion (CD).";
      }
      uses penalty-value;
    }
    leaf max-polarization-mode-dispersion {
      type decimal-2 {
        range "0..max";
      }
      units "ps";
      config false;
      description
        "Maximum acceptable accumulated polarization mode
         dispersion (PMD) on the receiver at Rx-power reference point
         (rx-ref-channel-power) and in absence of other impairments";
      reference
        "ITU-T G.666 (02/2011): Characteristics of polarization
                   mode dispersion compensators and of receivers that
                   compensate for polarization mode dispersion
         RFC ZZZZ: A YANG Data Model for Optical Impairment-aware
                   Topology, Section 2.4.6";
    }
    list pmd-penalty {
      key "pmd-value";
      config false;
      description
        "Optional penalty associated with a given accumulated
         polarization mode dispersion (PMD) value measured in
         absence of other impairments.

         This list of pair PMD and OSNR penalty can be used to
         sample the function OSNR penalty = f(PMD).";
      reference
        "RFC ZZZZ: A YANG Data Model for Optical Impairment-aware
                   Topology, Section 2.4.6";
      leaf pmd-value {
        type decimal-2 {
          range "0..max";
        }
        units "ps";
        description
          "The Polarization Mode Dispersion (PMD).";
      }
      uses penalty-value;
    }
    leaf max-polarization-dependent-loss {
      type power-loss-or-null;
      config false;
      mandatory true;
      description
        "Maximum acceptable accumulated polarization dependent
         loss (PDL) on the receiver at Rx-power reference point
         (rx-ref-channel-power) and in absence of other
         impairments.";
      reference
        "RFC ZZZZ: A YANG Data Model for Optical Impairment-aware
                   Topology, Section 2.4.6";
    }
    list pdl-penalty {
      key "pdl-value";
      config false;
      description
        "Optional penalty associated with a given accumulated
         polarization dependent loss (PDL) value, measured in
         absence of other impairments.

         This list of pair PDL and OSNR penalty can be used to
         sample the function OSNR penalty = f(PDL).";
      reference
        "RFC ZZZZ: A YANG Data Model for Optical Impairment-aware
                   Topology, Section 2.4.6";
      leaf pdl-value {
        type power-loss;
        description
          "Maximum acceptable accumulated polarization dependent
           loss (PDL).";
      }
      uses penalty-value;
    }
    leaf available-modulation-type {
      type identityref {
        base modulation;
      }
      config false;
      description
        "Modulation type the specific transceiver in the list
         can support.";
    }
    leaf min-OSNR {
      type snr;
      units "dBm";
      config false;
      description
        "Minimum OSNR measured over 0.1 nm resolution bandwidth:
         if received OSNR at Rx-power reference point
         (rx-ref-channel-power) is lower than MIN-OSNR, an increased
         level of bit-errors post-FEC needs to be expected.";
    }
    leaf rx-ref-channel-power {
      type power-dbm;
      config false;
      description
        "The channel power used as reference for defining penalties
         and min-OSNR.";
    }
    list rx-channel-power-penalty {
      key "rx-channel-power-value";
      config false;
      description
        "Optional penalty associated with a received power
         lower than rx-ref-channel-power.

         This list of pair power and OSNR penalty can be used to
         sample the function OSNR penalty = f(rx-channel-power).";
      leaf rx-channel-power-value {
        type power-dbm;
        units "dBm";
        description
          "The Received Power.";
      }
      uses penalty-value;
    }
    leaf min-Q-factor {
      type decimal-2;
      units "dB";
      config false;
      description
        "The value of the Q factor at the FEC threshold
         (fec-threshold).";
      reference
        "ITU-T O.201 (07/2003): Q-factor test equipment to estimate
                   the transmission performance of optical channels";
    }
    leaf available-baud-rate {
      type decimal64 {
        fraction-digits 1;
      }
      units "Bd";
      config false;
      description
        "Baud-rate the specific transceiver in
         the list can support.
         Baud-rate is the unit for symbol rate or modulation rate
         in symbols per second or pulses per second.
         It is the number of distinct symbol changes (signal events)
         made to the transmission medium per second in a digitally
         modulated signal or a line code";
    }
    leaf roll-off {
      type decimal64 {
        fraction-digits 4;
        range "0..1";
      }
      config false;
      description
        "the roll-off factor (beta with values from 0 to 1)
         identifies how the real signal shape exceed
         the baud rate. If=0 it is exactly matching
         the baud rate.If=1 the signal exceeds the
         50% of the baud rate at each side.";
    }
    leaf min-carrier-spacing {
      type frequency-ghz;
      config false;
      description
        "This attribute specifies the minimum nominal difference
         between the carrier frequencies of two homogeneous OTSis
         (which have the same optical characteristics but the central
         frequencies) such that if they are placed next to each other
         the interference due to spectrum overlap between them can be
         considered negligible.

         In case of heterogeneous OTSi it is up to path computation
         engine to determine the minimum distance between the carrier
         frequency of the two adjacent OTSi.";
    }
    leaf available-fec-type {
      type identityref {
        base fec-type;
      }
      config false;
      description
        "Available FEC.";
    }
    leaf fec-code-rate {
      type decimal64 {
        fraction-digits 8;
        range "0..max";
      }
      config false;
      description
        "FEC-code-rate";
    }
    leaf fec-threshold {
      type decimal64 {
        fraction-digits 8;
        range "0..max";
      }
      config false;
      description
        "Threshold on the BER, for which FEC
         is able to correct errors";
    }
    leaf in-band-osnr {
      type snr;
      config false;
      description
        "The OSNR defined within the bandwidth of the transmit
         spectral excursion (i.e.,  between the nominal central
         frequency of the channel and the -3.0dB points of the
         transmitter spectrum furthest from the nominal central
         frequency) measured at reference point Ss.

         The in-band OSNR is referenced to an optical bandwidth of
         0.1nm @ 193.7 THz or 12.5 GHz.";
      reference
        "OIF-400ZR-01.0: Implementation Agreement 400ZR";
    }
    leaf out-of-band-osnr {
      type snr;
      config false;
      description
        "The ratio of the peak transmitter power to the integrated
         power outside the transmitter spectral excursion.

         The spectral resolution of the measurement shall be better
         than the maximum spectral width of the peak.

         The out-of-band OSNR is referenced to an optical bandwidth
         of 0.1nm @ 193.7 THz or 12.5 GHz";
      reference
        "OIF-400ZR-01.0: Implementation Agreement 400ZR";
    }
    leaf tx-polarization-power-difference {
      type power-ratio;
      config false;
      description
        "The transmitter polarization dependent power difference
         defined as the power difference between X and Y
         polarizations.";
      reference
        "OIF-400ZR-01.0: Implementation Agreement 400ZR";
    }
    leaf polarization-skew {
      type decimal-2;
      units "ps";
      config false;
      description
        "The X-Y skew, included as a fixed value in the receiver
         polarization mode dispersion (PMD) tolerance limits.";
      reference
        "OIF-400ZR-01.0: Implementation Agreement 400ZR";
    }
  }

  grouping common-standard-organizational-mode {
    description
      "The attributes describing the capabilities for a standard or
       an organizational transceiver's mode.";
    leaf-list line-coding-bitrate {
      type identityref {
        base line-coding;
      }
      config false;
      description
        "The list of the bit rate/line coding of the optical
         tributary signal supported by the transceiver.

         Reporting this list is optional when the standard or
         organization mode supports only one bit rate/line coding.";
      reference
        "ITU-T G.698.2 v3.0 (11/2018): Amplified multichannel dense
                     wavelength division multiplexing applications
                     with single channel optical interfaces Optical
                     transport network, Clause 7.1.2";
    }
  }

  grouping transceiver-tuning-range {
    description
      "Transceiver tuning range (f-min, f-max, f-granularity)";
    leaf min-central-frequency {
      type frequency-thz;
      description
        "This parameter indicates the minimum frequency for the
         transceiver tuning range.";
    }
    leaf max-central-frequency {
      type frequency-thz;
      description
        "This parameter indicates the maximum frequency for the
         transceiver tuning range.";
    }
    leaf transceiver-tunability-granularity {
      type frequency-ghz;
      description
        "This parameter indicates the transceiver frequency
         fine-tuning granularity e.g 3.125GHz or 0.001GHz.";
    }
  }

  grouping common-all-modes {
    description
      "The attributes describing the capabilities for any type of
       transceiver's mode.";
    container transceiver-tuning-range {
      config false;
      description
        "Transceiver tuning range (f-min, f-max, f-granularity)";
      uses transceiver-tuning-range;
    }
    leaf tx-channel-power-min {
      type power-dbm;
      config false;
      description
        "The minimum output power of this interface";
    }
    leaf tx-channel-power-max {
      type power-dbm;
      config false;
      description
        "The maximum output power of this interface";
    }
    leaf rx-channel-power-min {
      type power-dbm;
      config false;
      description
        "The minimum input power of this interface";
    }
    leaf rx-channel-power-max {
      type power-dbm;
      config false;
      description
        "The maximum input power of this interface";
    }
    leaf rx-total-power-max {
      type power-dbm;
      config false;
      description
        "Maximum rx optical power for all the channels.

         It is applicable only to multichannel modes.";
    }
  }

  grouping common-transceiver-param {
    description
      "The common parameters of an optical transceiver,
       that supplement the configured mode.";
    uses common-transceiver-configured-param;
    uses common-transceiver-readonly-param;
  }

  grouping common-transceiver-configured-param {
    description
      "The configured parameters of an optical transceiver,
       that supplement the configured mode.";
    leaf line-coding-bitrate {
      type identityref {
        base line-coding;
      }
      description
        "Bit rate/line coding of the optical tributary signal.

         Support of this attribute is optional when the configured
         mode supports only one bit rate/line coding.";
      reference
        "ITU-T G.698.2 v3.0 (11/2018): Amplified multichannel dense
                     wavelength division multiplexing applications
                     with single channel optical interfaces Optical
                     transport network, Clause 7.1.2";
    }
    leaf tx-channel-power {
      type power-dbm-or-null;
      description
        "The current channel transmit power, when the value is
         known or an empty value when the value is not known.

         The empty value MUST NOT be used when this attribute is
         configured.";
    }
  }

  grouping common-transceiver-readonly-param {
    description
      "The common read-only parameters of an optical transceiver,
       that supplement the configured mode.";
    leaf rx-channel-power {
      type power-dbm-or-null;
      config false;
      description
        "The current channel received power, when the value is
         known or an empty value when the value is not known.";
    }
    leaf rx-total-power {
      type power-dbm-or-null;
      config false;
      description
        "The current total received power, when the value is known
         or an empty value when the value is not known.";
    }
  }

  grouping tunnel-attributes {
    description
      "Parameters for Layer0 (WSON or Flexi-Grid) Tunnels.";
    leaf wavelength-assignment {
      type identityref {
        base wavelength-assignment;
      }
      description
        "Wavelength Allocation Method.";
    }
  }

  grouping frequency-range {
    description
      "This grouping defines the lower and upper bounds of a
       frequency range (e.g., a band).

       This grouping SHOULD NOT be used to define a frequency slot,
       which SHOULD be defined using the n and m values instead.";
    leaf lower-frequency {
      type frequency-thz;
      mandatory true;
      description
        "The lower frequency boundary of the
         frequency range.";
    }
    leaf upper-frequency {
      type frequency-thz;
      must '. > ../lower-frequency' {
        error-message
          "The upper frequency must be greater than the lower
           frequency.";
      }
      mandatory true;
      description
        "The upper frequency boundary of the
         frequency range.";
    }
  }

  grouping frequency-range-with-identifier {
    description
      "This grouping extends the frequency-range with an identifier,
       which used as a key when it is needed to define different
       properties (e.g., optical impairments) for different
       frequency ranges.";
    leaf frequency-range-id {
      type uint16;
      description
        "The identifier of the frequency range.";
    }
    container frequency-range {
      description
        "The frequency range for which these optical
         impairments apply.";
      uses frequency-range;
    }
  }

  grouping path-constraints {
    description
      "Common attribute for Layer 0 path constraints to be used by
       Layer 0 computation.";
    leaf gsnr-extra-margin {
      type snr {
        range "0..max";
      }
      default "0";
      description
        "An additional margin to be added to the OSNR-min of the
         transceiver when checking the estimated received Generalized
         SNR (GSNR).";
    }
  }

  grouping path-properties {
    description
      "Common attribute for reporting the Layer 0 computed path
       properties.";
    leaf estimated-gsnr {
      type snr;
      config false;
      description
        "The estimate received GSNR for the computed path.";
    }
    leaf estimated-eol-gsnr {
      type snr;
      config false;
      description
        "The estimate received GSNR for the computed path
         degraded at the end of life.";
    }
    leaf estimated-lowest-gsnr {
      type snr;
      config false;
      description
        "The estimate lowest received GSNR for the computed path
         among all possible wavelength channels along the same
         path.";
    }
  }
}
]]></sourcecode></figure>

</section>
<section anchor="security-considerations"><name>Security Considerations</name>

<t>This section is modeled after the template described in <xref section="3.7" sectionFormat="of" target="I-D.ietf-netmod-rfc8407bis"/>.</t>

<t>The "ietf-layer0-types" YANG module defines a data model that is
designed to be accessed via YANG-based management protocols, such as
NETCONF <xref target="RFC6241"/> and RESTCONF <xref target="RFC8040"/>. These YANG-based management
protocols (1) have to use a secure transport layer
(e.g., SSH <xref target="RFC4252"/>, TLS <xref target="RFC8446"/>, and
QUIC <xref target="RFC9000"/>) and (2) have
to use mutual authentication.</t>

<t>The Network Configuration Access Control Model (NACM) <xref target="RFC8341"/>
provides the means to restrict access for particular NETCONF or
RESTCONF users to a preconfigured subset of all available NETCONF or
RESTCONF protocol operations and content.</t>

<t>The YANG module defines a set of identities, types, and
groupings. These nodes are intended to be reused by other YANG
modules. The module by itself does not expose any data nodes that
are writable, data nodes that contain read-only state, or RPCs.
As such, there are no additional security issues related to
the YANG module that need to be considered.</t>

<t>Modules that use the groupings that are defined in this document
should identify the corresponding security considerations.</t>

</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<t>IANA is requested to update the following registration in the "ns" registry
within the "IETF XML Registry" group <xref target="RFC3688"/> to reference this document:</t>

<figure><artwork><![CDATA[
      URI: urn:ietf:params:xml:ns:yang:ietf-layer0-types
      Registrant Contact:  The IESG.
      XML: N/A; the requested URI is an XML namespace.
]]></artwork></figure>

<t>IANA is requested to register the following YANG module in the "YANG Module Names" registry <xref target="RFC6020"/>
within the "YANG Parameters" registry group.</t>

<figure><artwork><![CDATA[
      Name: ietf-layer0-types
      Maintained by IANA? N
      Namespace: urn:ietf:params:xml:ns:yang:ietf-layer0-types
      Prefix: l0-types
      Reference: RFC XXXX
]]></artwork></figure>

</section>


  </middle>

  <back>


<references title='References' anchor="sec-combined-references">

    <references title='Normative References' anchor="sec-normative-references">

<reference anchor="ITU-T_G.666" target="https://www.itu.int/rec/T-REC-G.666">
  <front>
    <title>Characteristics of polarization mode dispersion compensators and of receivers that compensate for polarization mode dispersion"</title>
    <author >
      <organization>International Telecommunication Union</organization>
    </author>
    <date year="2011" month="February"/>
  </front>
  <seriesInfo name="ITU-T Recommendation G.666" value=""/>
</reference>
<reference anchor="ITU-T_G.694.1" target="https://www.itu.int/rec/T-REC-G.694.1">
  <front>
    <title>Spectral grids for WDM applications: DWDM frequency grid</title>
    <author >
      <organization>International Telecommunication Union</organization>
    </author>
    <date year="2020" month="October"/>
  </front>
  <seriesInfo name="ITU-T Recommendation G.694.1" value=""/>
</reference>
<reference anchor="ITU-T_G.694.2" target="https://www.itu.int/rec/T-REC-G.694.2">
  <front>
    <title>Spectral grids for WDM applications: CWDM wavelength grid</title>
    <author >
      <organization>International Telecommunication Union</organization>
    </author>
    <date year="2003" month="December"/>
  </front>
  <seriesInfo name="ITU-T Recommendation G.694.2" value=""/>
</reference>
<reference anchor="ITU-T_G.698.2" target="https://www.itu.int/rec/T-REC-G.698.2">
  <front>
    <title>Amplified multichannel dense wavelength division multiplexing applications with single channel optical interfaces</title>
    <author >
      <organization>International Telecommunication Union</organization>
    </author>
    <date year="2018" month="November"/>
  </front>
  <seriesInfo name="ITU-T Recommendation G.698.2" value=""/>
</reference>
<reference anchor="ITU-T_G.709" target="https://www.itu.int/rec/T-REC-G.709">
  <front>
    <title>Interfaces for the optical transport network</title>
    <author >
      <organization>International Telecommunication Union</organization>
    </author>
    <date year="2020" month="June"/>
  </front>
  <seriesInfo name="ITU-T Recommendation G.709" value=""/>
</reference>
<reference anchor="ITU-T_G.709.2" target="https://www.itu.int/rec/T-REC-G.709.2">
  <front>
    <title>OTU4 long-reach interface</title>
    <author >
      <organization>International Telecommunication Union</organization>
    </author>
    <date year="2020" month="September"/>
  </front>
  <seriesInfo name="ITU-T Recommendation G.709.2, Corrigendum 1" value=""/>
</reference>
<reference anchor="ITU-T_G.709.3" target="https://www.itu.int/rec/T-REC-G.709.3">
  <front>
    <title>Flexible OTN B100G long-reach interfaces</title>
    <author >
      <organization>International Telecommunication Union</organization>
    </author>
    <date year="2022" month="November"/>
  </front>
  <seriesInfo name="ITU-T Recommendation G.709.3, Amendment 1" value=""/>
</reference>
<reference anchor="ITU-T_G.959.1" target="https://www.itu.int/rec/T-REC-G.959.1">
  <front>
    <title>Optical transport network physical layer interfaces</title>
    <author >
      <organization>International Telecommunication Union</organization>
    </author>
    <date year="2018" month="July"/>
  </front>
  <seriesInfo name="ITU-T Recommendation G.959.1" value=""/>
</reference>
<reference anchor="ITU-T_G.975" target="https://www.itu.int/rec/T-REC-G.975">
  <front>
    <title>Forward error correction for submarine systems</title>
    <author >
      <organization>International Telecommunication Union</organization>
    </author>
    <date year="2000" month="October"/>
  </front>
  <seriesInfo name="ITU-T Recommendation G.975" value=""/>
</reference>
<reference anchor="ITU-T_G.975.1" target="https://www.itu.int/rec/T-REC-G.975.1">
  <front>
    <title>Forward error correction for high bit-rate DWDM submarine systems</title>
    <author >
      <organization>International Telecommunication Union</organization>
    </author>
    <date year="2013" month="July"/>
  </front>
  <seriesInfo name="ITU-T Recommendation G.975.1, Corrigendum 2" value=""/>
</reference>
<reference anchor="ITU-T_G.977.1" target="https://www.itu.int/rec/T-REC-G.977.1">
  <front>
    <title>Transverse compatible dense wavelength division multiplexing applications for repeatered optical fibre submarine cable systems</title>
    <author >
      <organization>International Telecommunication Union</organization>
    </author>
    <date year="2021" month="February"/>
  </front>
  <seriesInfo name="ITU-T Recommendation G.977.1" value=""/>
</reference>
<reference anchor="ITU-T_G.9700" target="https://www.itu.int/rec/T-REC-G.9700">
  <front>
    <title>Fast access to subscriber terminals (G.fast) - Power spectral density specification</title>
    <author >
      <organization>International Telecommunication Union</organization>
    </author>
    <date year="2019" month="July"/>
  </front>
  <seriesInfo name="ITU-T Recommendation G.9700" value=""/>
</reference>
<reference anchor="OIF_400ZR" target="https://www.oiforum.com/wp-content/uploads/OIF-400ZR-01.0_reduced2.pdf">
  <front>
    <title>Implementation Agreement 400ZR</title>
    <author >
      <organization>Optical Internetworking Forum</organization>
    </author>
    <date year="2020" month="March"/>
  </front>
  <seriesInfo name="OIF-400ZR-01.0 Implementation Agreement" value=""/>
</reference>


<reference anchor="RFC8342">
  <front>
    <title>Network Management Datastore Architecture (NMDA)</title>
    <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
    <author fullname="J. Schoenwaelder" initials="J." surname="Schoenwaelder"/>
    <author fullname="P. Shafer" initials="P." surname="Shafer"/>
    <author fullname="K. Watsen" initials="K." surname="Watsen"/>
    <author fullname="R. Wilton" initials="R." surname="Wilton"/>
    <date month="March" year="2018"/>
    <abstract>
      <t>Datastores are a fundamental concept binding the data models written in the YANG data modeling language to network management protocols such as the Network Configuration Protocol (NETCONF) and RESTCONF. This document defines an architectural framework for datastores based on the experience gained with the initial simpler model, addressing requirements that were not well supported in the initial model. This document updates RFC 7950.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8342"/>
  <seriesInfo name="DOI" value="10.17487/RFC8342"/>
</reference>

<reference anchor="I-D.ietf-teas-rfc8776-update">
   <front>
      <title>Common YANG Data Types for Traffic Engineering</title>
      <author fullname="Italo Busi" initials="I." surname="Busi">
         <organization>Huawei</organization>
      </author>
      <author fullname="Aihua Guo" initials="A." surname="Guo">
         <organization>Futurewei Technologies</organization>
      </author>
      <author fullname="Xufeng Liu" initials="X." surname="Liu">
         <organization>Alef Edge</organization>
      </author>
      <author fullname="Tarek Saad" initials="T." surname="Saad">
         <organization>Cisco Systems Inc.</organization>
      </author>
      <author fullname="Igor Bryskin" initials="I." surname="Bryskin">
         <organization>Individual</organization>
      </author>
      <date day="29" month="August" year="2025"/>
      <abstract>
	 <t>   This document defines a collection of common data types, identities,
   and groupings in YANG data modeling language.  These derived common
   data types, identities and groupings are intended to be imported by
   other modules, e.g., those which model the Traffic Engineering (TE)
   configuration and state capabilities.

   This document obsoletes RFC 8776.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-teas-rfc8776-update-18"/>
   
</reference>

<reference anchor="I-D.ietf-ccamp-optical-impairment-topology-yang">
   <front>
      <title>A YANG Data Model for Optical Impairment-aware Topology</title>
      <author fullname="Dieter Beller" initials="D." surname="Beller">
         <organization>Nokia</organization>
      </author>
      <author fullname="Esther Le Rouzic" initials="E." surname="Le Rouzic">
         <organization>Orange</organization>
      </author>
      <author fullname="Sergio Belotti" initials="S." surname="Belotti">
         <organization>Nokia</organization>
      </author>
      <author fullname="Gabriele Galimberti" initials="G." surname="Galimberti">
         <organization>Nokia</organization>
      </author>
      <author fullname="Italo Busi" initials="I." surname="Busi">
         <organization>Huawei Technologies</organization>
      </author>
      <date day="7" month="July" year="2025"/>
      <abstract>
	 <t>   In order to provision an optical connection through optical networks,
   a combination of path continuity, resource availability, and
   impairment constraints must be met to determine viable and optimal
   paths through the network.  The determination of appropriate paths is
   known as Impairment-Aware Routing and Wavelength Assignment (IA-RWA)
   for a Wavelength Switched Optical Network (WSON), while it is known
   as Impairment-Aware Routing and Spectrum Assignment (IA-RSA) for a
   Spectrum Switched Optical Network (SSON).

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

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-ccamp-optical-impairment-topology-yang-19"/>
   
</reference>
<reference anchor="RFC7950">
  <front>
    <title>The YANG 1.1 Data Modeling Language</title>
    <author fullname="M. Bjorklund" initials="M." role="editor" surname="Bjorklund"/>
    <date month="August" year="2016"/>
    <abstract>
      <t>YANG is a data modeling language used to model configuration data, state data, Remote Procedure Calls, and notifications for network management protocols. This document describes the syntax and semantics of version 1.1 of the YANG language. YANG version 1.1 is a maintenance release of the YANG language, addressing ambiguities and defects in the original specification. There are a small number of backward incompatibilities from YANG version 1. This document also specifies the YANG mappings to the Network Configuration Protocol (NETCONF).</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7950"/>
  <seriesInfo name="DOI" value="10.17487/RFC7950"/>
</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>
<reference anchor="RFC6205">
  <front>
    <title>Generalized Labels for Lambda-Switch-Capable (LSC) Label Switching Routers</title>
    <author fullname="T. Otani" initials="T." role="editor" surname="Otani"/>
    <author fullname="D. Li" initials="D." role="editor" surname="Li"/>
    <date month="March" year="2011"/>
    <abstract>
      <t>Technology in the optical domain is constantly evolving, and, as a consequence, new equipment providing lambda switching capability has been developed and is currently being deployed.</t>
      <t>Generalized MPLS (GMPLS) is a family of protocols that can be used to operate networks built from a range of technologies including wavelength (or lambda) switching. For this purpose, GMPLS defined a wavelength label as only having significance between two neighbors. Global wavelength semantics are not considered.</t>
      <t>In order to facilitate interoperability in a network composed of next generation lambda-switch-capable equipment, this document defines a standard lambda label format that is compliant with the Dense Wavelength Division Multiplexing (DWDM) and Coarse Wavelength Division Multiplexing (CWDM) grids defined by the International Telecommunication Union Telecommunication Standardization Sector. The label format defined in this document can be used in GMPLS signaling and routing protocols. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="6205"/>
  <seriesInfo name="DOI" value="10.17487/RFC6205"/>
</reference>
<reference anchor="RFC7699">
  <front>
    <title>Generalized Labels for the Flexi-Grid in Lambda Switch Capable (LSC) Label Switching Routers</title>
    <author fullname="A. Farrel" initials="A." surname="Farrel"/>
    <author fullname="D. King" initials="D." surname="King"/>
    <author fullname="Y. Li" initials="Y." surname="Li"/>
    <author fullname="F. Zhang" initials="F." surname="Zhang"/>
    <date month="November" year="2015"/>
    <abstract>
      <t>GMPLS supports the description of optical switching by identifying entries in fixed lists of switchable wavelengths (called grids) through the encoding of lambda labels. Work within the ITU-T Study Group 15 has defined a finer-granularity grid, and the facility to flexibly select different widths of spectrum from the grid. This document defines a new GMPLS lambda label format to support this flexi-grid.</t>
      <t>This document updates RFCs 3471 and 6205 by introducing a new label format.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7699"/>
  <seriesInfo name="DOI" value="10.17487/RFC7699"/>
</reference>
<reference anchor="RFC7689">
  <front>
    <title>Signaling Extensions for Wavelength Switched Optical Networks</title>
    <author fullname="G. Bernstein" initials="G." role="editor" surname="Bernstein"/>
    <author fullname="S. Xu" initials="S." surname="Xu"/>
    <author fullname="Y. Lee" initials="Y." role="editor" surname="Lee"/>
    <author fullname="G. Martinelli" initials="G." surname="Martinelli"/>
    <author fullname="H. Harai" initials="H." surname="Harai"/>
    <date month="November" year="2015"/>
    <abstract>
      <t>This document provides extensions to Generalized Multiprotocol Label Switching (GMPLS) signaling for control of Wavelength Switched Optical Networks (WSONs). Such extensions are applicable in WSONs under a number of conditions including: (a) when optional processing, such as regeneration, must be configured to occur at specific nodes along a path, (b) where equipment must be configured to accept an optical signal with specific attributes, or (c) where equipment must be configured to output an optical signal with specific attributes. This document provides mechanisms to support distributed wavelength assignment with a choice of distributed wavelength assignment algorithms.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7689"/>
  <seriesInfo name="DOI" value="10.17487/RFC7689"/>
</reference>
<reference anchor="RFC7688">
  <front>
    <title>GMPLS OSPF Enhancement for Signal and Network Element Compatibility for Wavelength Switched Optical Networks</title>
    <author fullname="Y. Lee" initials="Y." role="editor" surname="Lee"/>
    <author fullname="G. Bernstein" initials="G." role="editor" surname="Bernstein"/>
    <date month="November" year="2015"/>
    <abstract>
      <t>This document provides Generalized Multiprotocol Label Switching (GMPLS) Open Shortest Path First (OSPF) routing enhancements to support signal compatibility constraints associated with Wavelength Switched Optical Network (WSON) elements. These routing enhancements are applicable in common optical or hybrid electro-optical networks where not all the optical signals in the network are compatible with all network elements participating in the network.</t>
      <t>This compatibility constraint model is applicable to common optical or hybrid electro-optical systems such as optical-electronic-optical (OEO) switches, regenerators, and wavelength converters, since such systems can be limited to processing only certain types of WSON signals.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7688"/>
  <seriesInfo name="DOI" value="10.17487/RFC7688"/>
</reference>
<reference anchor="RFC8363">
  <front>
    <title>GMPLS OSPF-TE Extensions in Support of Flexi-Grid Dense Wavelength Division Multiplexing (DWDM) Networks</title>
    <author fullname="X. Zhang" initials="X." surname="Zhang"/>
    <author fullname="H. Zheng" initials="H." surname="Zheng"/>
    <author fullname="R. Casellas" initials="R." surname="Casellas"/>
    <author fullname="O. Gonzalez de Dios" initials="O." surname="Gonzalez de Dios"/>
    <author fullname="D. Ceccarelli" initials="D." surname="Ceccarelli"/>
    <date month="May" year="2018"/>
    <abstract>
      <t>The International Telecommunication Union Telecommunication standardization sector (ITU-T) has extended its Recommendations G.694.1 and G.872 to include a new Dense Wavelength Division Multiplexing (DWDM) grid by defining channel spacings, a set of nominal central frequencies, and the concept of the "frequency slot". Corresponding techniques for data-plane connections are known as "flexi-grid".</t>
      <t>Based on the characteristics of flexi-grid defined in G.694.1 and in RFCs 7698 and 7699, this document describes the Open Shortest Path First - Traffic Engineering (OSPF-TE) extensions in support of GMPLS control of networks that include devices that use the new flexible optical grid.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8363"/>
  <seriesInfo name="DOI" value="10.17487/RFC8363"/>
</reference>
<reference anchor="RFC3471">
  <front>
    <title>Generalized Multi-Protocol Label Switching (GMPLS) Signaling Functional Description</title>
    <author fullname="L. Berger" initials="L." role="editor" surname="Berger"/>
    <date month="January" year="2003"/>
    <abstract>
      <t>This document describes extensions to Multi-Protocol Label Switching (MPLS) signaling required to support Generalized MPLS. Generalized MPLS extends the MPLS control plane to encompass time-division (e.g., Synchronous Optical Network and Synchronous Digital Hierarchy, SONET/SDH), wavelength (optical lambdas) and spatial switching (e.g., incoming port or fiber to outgoing port or fiber). This document presents a functional description of the extensions. Protocol specific formats and mechanisms, and technology specific details are specified in separate documents. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="3471"/>
  <seriesInfo name="DOI" value="10.17487/RFC3471"/>
</reference>
<reference anchor="RFC8795">
  <front>
    <title>YANG Data Model for Traffic Engineering (TE) Topologies</title>
    <author fullname="X. Liu" initials="X." surname="Liu"/>
    <author fullname="I. Bryskin" initials="I." surname="Bryskin"/>
    <author fullname="V. Beeram" initials="V." surname="Beeram"/>
    <author fullname="T. Saad" initials="T." surname="Saad"/>
    <author fullname="H. Shah" initials="H." surname="Shah"/>
    <author fullname="O. Gonzalez de Dios" initials="O." surname="Gonzalez de Dios"/>
    <date month="August" year="2020"/>
    <abstract>
      <t>This document defines a YANG data model for representing, retrieving, and manipulating Traffic Engineering (TE) Topologies. The model serves as a base model that other technology-specific TE topology models can augment.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8795"/>
  <seriesInfo name="DOI" value="10.17487/RFC8795"/>
</reference>
<reference anchor="RFC4203">
  <front>
    <title>OSPF Extensions in Support of Generalized Multi-Protocol Label Switching (GMPLS)</title>
    <author fullname="K. Kompella" initials="K." role="editor" surname="Kompella"/>
    <author fullname="Y. Rekhter" initials="Y." role="editor" surname="Rekhter"/>
    <date month="October" year="2005"/>
    <abstract>
      <t>This document specifies encoding of extensions to the OSPF routing protocol in support of Generalized Multi-Protocol Label Switching (GMPLS). [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4203"/>
  <seriesInfo name="DOI" value="10.17487/RFC4203"/>
</reference>
<reference anchor="RFC8341">
  <front>
    <title>Network Configuration Access Control Model</title>
    <author fullname="A. Bierman" initials="A." surname="Bierman"/>
    <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
    <date month="March" year="2018"/>
    <abstract>
      <t>The standardization of network configuration interfaces for use with the Network Configuration Protocol (NETCONF) or the RESTCONF protocol requires a structured and secure operating environment that promotes human usability and multi-vendor interoperability. There is a need for standard mechanisms to restrict NETCONF or RESTCONF protocol access for particular users to a preconfigured subset of all available NETCONF or RESTCONF protocol operations and content. This document defines such an access control model.</t>
      <t>This document obsoletes RFC 6536.</t>
    </abstract>
  </front>
  <seriesInfo name="STD" value="91"/>
  <seriesInfo name="RFC" value="8341"/>
  <seriesInfo name="DOI" value="10.17487/RFC8341"/>
</reference>



    </references>

    <references title='Informative References' anchor="sec-informative-references">

<reference anchor="ITU-T_G.807" >
  <front>
    <title>Generic functional architecture of the optical media network</title>
    <author >
      <organization>International Telecommunication Union</organization>
    </author>
    <date year="2021" month="January"/>
  </front>
  <seriesInfo name="ITU-T Supplement G.807, Amendment 1" value=""/>
</reference>
<reference anchor="ITU-T_G.872" >
  <front>
    <title>Architecture of optical transport networks</title>
    <author >
      <organization>International Telecommunication Union</organization>
    </author>
    <date year="2021" month="January"/>
  </front>
  <seriesInfo name="ITU-T Supplement G.872, Amendment 1" value=""/>
</reference>
<reference anchor="ITU-T_G.Sup39" >
  <front>
    <title>Optical system design and engineering considerations</title>
    <author >
      <organization>International Telecommunication Union</organization>
    </author>
    <date year="2016" month="February"/>
  </front>
  <seriesInfo name="ITU-T Supplement G.Sup39" value=""/>
</reference>


<reference anchor="RFC6163">
  <front>
    <title>Framework for GMPLS and Path Computation Element (PCE) Control of Wavelength Switched Optical Networks (WSONs)</title>
    <author fullname="Y. Lee" initials="Y." role="editor" surname="Lee"/>
    <author fullname="G. Bernstein" initials="G." role="editor" surname="Bernstein"/>
    <author fullname="W. Imajuku" initials="W." surname="Imajuku"/>
    <date month="April" year="2011"/>
    <abstract>
      <t>This document provides a framework for applying Generalized Multi-Protocol Label Switching (GMPLS) and the Path Computation Element (PCE) architecture to the control of Wavelength Switched Optical Networks (WSONs). In particular, it examines Routing and Wavelength Assignment (RWA) of optical paths.</t>
      <t>This document focuses on topological elements and path selection constraints that are common across different WSON environments; as such, it does not address optical impairments in any depth. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="6163"/>
  <seriesInfo name="DOI" value="10.17487/RFC6163"/>
</reference>
<reference anchor="RFC7698">
  <front>
    <title>Framework and Requirements for GMPLS-Based Control of Flexi-Grid Dense Wavelength Division Multiplexing (DWDM) Networks</title>
    <author fullname="O. Gonzalez de Dios" initials="O." role="editor" surname="Gonzalez de Dios"/>
    <author fullname="R. Casellas" initials="R." role="editor" surname="Casellas"/>
    <author fullname="F. Zhang" initials="F." surname="Zhang"/>
    <author fullname="X. Fu" initials="X." surname="Fu"/>
    <author fullname="D. Ceccarelli" initials="D." surname="Ceccarelli"/>
    <author fullname="I. Hussain" initials="I." surname="Hussain"/>
    <date month="November" year="2015"/>
    <abstract>
      <t>To allow efficient allocation of optical spectral bandwidth for systems that have high bit-rates, the International Telecommunication Union Telecommunication Standardization Sector (ITU-T) has extended its Recommendations G.694.1 and G.872 to include a new Dense Wavelength Division Multiplexing (DWDM) grid by defining a set of nominal central frequencies, channel spacings, and the concept of the "frequency slot". In such an environment, a data-plane connection is switched based on allocated, variable-sized frequency ranges within the optical spectrum, creating what is known as a flexible grid (flexi-grid).</t>
      <t>Given the specific characteristics of flexi-grid optical networks and their associated technology, this document defines a framework and the associated control-plane requirements for the application of the existing GMPLS architecture and control-plane protocols to the control of flexi-grid DWDM networks. The actual extensions to the GMPLS protocols will be defined in companion documents.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7698"/>
  <seriesInfo name="DOI" value="10.17487/RFC7698"/>
</reference>
<reference anchor="RFC9093">
  <front>
    <title>A YANG Data Model for Layer 0 Types</title>
    <author fullname="H. Zheng" initials="H." surname="Zheng"/>
    <author fullname="Y. Lee" initials="Y." surname="Lee"/>
    <author fullname="A. Guo" initials="A." surname="Guo"/>
    <author fullname="V. Lopez" initials="V." surname="Lopez"/>
    <author fullname="D. King" initials="D." surname="King"/>
    <date month="August" year="2021"/>
    <abstract>
      <t>This document defines a collection of common data types and groupings in the YANG data modeling language. These derived common types and groupings are intended to be imported by modules that model Layer 0 optical Traffic Engineering (TE) configuration and state capabilities such as Wavelength Switched Optical Networks (WSONs) and flexi-grid Dense Wavelength Division Multiplexing (DWDM) networks.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9093"/>
  <seriesInfo name="DOI" value="10.17487/RFC9093"/>
</reference>
<reference anchor="RFC7446">
  <front>
    <title>Routing and Wavelength Assignment Information Model for Wavelength Switched Optical Networks</title>
    <author fullname="Y. Lee" initials="Y." role="editor" surname="Lee"/>
    <author fullname="G. Bernstein" initials="G." role="editor" surname="Bernstein"/>
    <author fullname="D. Li" initials="D." surname="Li"/>
    <author fullname="W. Imajuku" initials="W." surname="Imajuku"/>
    <date month="February" year="2015"/>
    <abstract>
      <t>This document provides a model of information needed by the Routing and Wavelength Assignment (RWA) process in Wavelength Switched Optical Networks (WSONs). The purpose of the information described in this model is to facilitate constrained optical path computation in WSONs. This model takes into account compatibility constraints between WSON signal attributes and network elements but does not include constraints due to optical impairments. Aspects of this information that may be of use to other technologies utilizing a GMPLS control plane are discussed.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7446"/>
  <seriesInfo name="DOI" value="10.17487/RFC7446"/>
</reference>
<reference anchor="RFC7581">
  <front>
    <title>Routing and Wavelength Assignment Information Encoding for Wavelength Switched Optical Networks</title>
    <author fullname="G. Bernstein" initials="G." role="editor" surname="Bernstein"/>
    <author fullname="Y. Lee" initials="Y." role="editor" surname="Lee"/>
    <author fullname="D. Li" initials="D." surname="Li"/>
    <author fullname="W. Imajuku" initials="W." surname="Imajuku"/>
    <author fullname="J. Han" initials="J." surname="Han"/>
    <date month="June" year="2015"/>
    <abstract>
      <t>A Wavelength Switched Optical Network (WSON) requires certain key information fields be made available to facilitate path computation and the establishment of Label Switched Paths (LSPs). The information model described in "Routing and Wavelength Assignment Information Model for Wavelength Switched Optical Networks" (RFC 7446) shows what information is required at specific points in the WSON. Part of the WSON information model contains aspects that may be of general applicability to other technologies, while other parts are specific to WSONs.</t>
      <t>This document provides efficient, protocol-agnostic encodings for the WSON-specific information fields. It is intended that protocol- specific documents will reference this memo to describe how information is carried for specific uses. Such encodings can be used to extend GMPLS signaling and routing protocols. In addition, these encodings could be used by other mechanisms to convey this same information to a Path Computation Element (PCE).</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7581"/>
  <seriesInfo name="DOI" value="10.17487/RFC7581"/>
</reference>

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

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

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-ccamp-dwdm-if-param-yang-13"/>
   
</reference>

<reference anchor="I-D.ietf-netmod-rfc8407bis">
   <front>
      <title>Guidelines for Authors and Reviewers of Documents Containing YANG Data Models</title>
      <author fullname="Andy Bierman" initials="A." surname="Bierman">
         <organization>YumaWorks</organization>
      </author>
      <author fullname="Mohamed Boucadair" initials="M." surname="Boucadair">
         <organization>Orange</organization>
      </author>
      <author fullname="Qin Wu" initials="Q." surname="Wu">
         <organization>Huawei</organization>
      </author>
      <date day="5" month="June" year="2025"/>
      <abstract>
	 <t>   This document provides guidelines for authors and reviewers of
   specifications containing YANG data models, including IANA-maintained
   modules.  Recommendations and procedures are defined, which are
   intended to increase interoperability and usability of Network
   Configuration Protocol (NETCONF) and RESTCONF Protocol
   implementations that utilize YANG modules.  This document obsoletes
   RFC 8407.

   Also, this document updates RFC 8126 by providing additional
   guidelines for writing the IANA considerations for RFCs that specify
   IANA-maintained modules.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-netmod-rfc8407bis-28"/>
   
</reference>
<reference anchor="RFC6241">
  <front>
    <title>Network Configuration Protocol (NETCONF)</title>
    <author fullname="R. Enns" initials="R." role="editor" surname="Enns"/>
    <author fullname="M. Bjorklund" initials="M." role="editor" surname="Bjorklund"/>
    <author fullname="J. Schoenwaelder" initials="J." role="editor" surname="Schoenwaelder"/>
    <author fullname="A. Bierman" initials="A." role="editor" surname="Bierman"/>
    <date month="June" year="2011"/>
    <abstract>
      <t>The Network Configuration Protocol (NETCONF) defined in this document provides mechanisms to install, manipulate, and delete the configuration of network devices. It uses an Extensible Markup Language (XML)-based data encoding for the configuration data as well as the protocol messages. The NETCONF protocol operations are realized as remote procedure calls (RPCs). This document obsoletes RFC 4741. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="6241"/>
  <seriesInfo name="DOI" value="10.17487/RFC6241"/>
</reference>
<reference anchor="RFC8040">
  <front>
    <title>RESTCONF Protocol</title>
    <author fullname="A. Bierman" initials="A." surname="Bierman"/>
    <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
    <author fullname="K. Watsen" initials="K." surname="Watsen"/>
    <date month="January" year="2017"/>
    <abstract>
      <t>This document describes an HTTP-based protocol that provides a programmatic interface for accessing data defined in YANG, using the datastore concepts defined in the Network Configuration Protocol (NETCONF).</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8040"/>
  <seriesInfo name="DOI" value="10.17487/RFC8040"/>
</reference>
<reference anchor="RFC4252">
  <front>
    <title>The Secure Shell (SSH) Authentication Protocol</title>
    <author fullname="T. Ylonen" initials="T." surname="Ylonen"/>
    <author fullname="C. Lonvick" initials="C." role="editor" surname="Lonvick"/>
    <date month="January" year="2006"/>
    <abstract>
      <t>The Secure Shell Protocol (SSH) is a protocol for secure remote login and other secure network services over an insecure network. This document describes the SSH authentication protocol framework and public key, password, and host-based client authentication methods. Additional authentication methods are described in separate documents. The SSH authentication protocol runs on top of the SSH transport layer protocol and provides a single authenticated tunnel for the SSH connection protocol. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4252"/>
  <seriesInfo name="DOI" value="10.17487/RFC4252"/>
</reference>
<reference anchor="RFC8446">
  <front>
    <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
    <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
    <date month="August" year="2018"/>
    <abstract>
      <t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol. TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t>
      <t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961. This document also specifies new requirements for TLS 1.2 implementations.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8446"/>
  <seriesInfo name="DOI" value="10.17487/RFC8446"/>
</reference>
<reference anchor="RFC9000">
  <front>
    <title>QUIC: A UDP-Based Multiplexed and Secure Transport</title>
    <author fullname="J. Iyengar" initials="J." role="editor" surname="Iyengar"/>
    <author fullname="M. Thomson" initials="M." role="editor" surname="Thomson"/>
    <date month="May" year="2021"/>
    <abstract>
      <t>This document defines the core of the QUIC transport protocol. QUIC provides applications with flow-controlled streams for structured communication, low-latency connection establishment, and network path migration. QUIC includes security measures that ensure confidentiality, integrity, and availability in a range of deployment circumstances. Accompanying documents describe the integration of TLS for key negotiation, loss detection, and an exemplary congestion control algorithm.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9000"/>
  <seriesInfo name="DOI" value="10.17487/RFC9000"/>
</reference>
<reference anchor="RFC3688">
  <front>
    <title>The IETF XML Registry</title>
    <author fullname="M. Mealling" initials="M." surname="Mealling"/>
    <date month="January" year="2004"/>
    <abstract>
      <t>This document describes an IANA maintained registry for IETF standards which use Extensible Markup Language (XML) related items such as Namespaces, Document Type Declarations (DTDs), Schemas, and Resource Description Framework (RDF) Schemas.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="81"/>
  <seriesInfo name="RFC" value="3688"/>
  <seriesInfo name="DOI" value="10.17487/RFC3688"/>
</reference>
<reference anchor="RFC6020">
  <front>
    <title>YANG - A Data Modeling Language for the Network Configuration Protocol (NETCONF)</title>
    <author fullname="M. Bjorklund" initials="M." role="editor" surname="Bjorklund"/>
    <date month="October" year="2010"/>
    <abstract>
      <t>YANG is a data modeling language used to model configuration and state data manipulated by the Network Configuration Protocol (NETCONF), NETCONF remote procedure calls, and NETCONF notifications. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="6020"/>
  <seriesInfo name="DOI" value="10.17487/RFC6020"/>
</reference>
<reference anchor="RFC8340">
  <front>
    <title>YANG Tree Diagrams</title>
    <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
    <author fullname="L. Berger" initials="L." role="editor" surname="Berger"/>
    <date month="March" year="2018"/>
    <abstract>
      <t>This document captures the current syntax used in YANG module tree diagrams. The purpose of this document is to provide a single location for this definition. This syntax may be updated from time to time based on the evolution of the YANG language.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="215"/>
  <seriesInfo name="RFC" value="8340"/>
  <seriesInfo name="DOI" value="10.17487/RFC8340"/>
</reference>



    </references>

</references>


<?line 3003?>

<section anchor="yang-tree"><name>The Complete Schema Trees</name>

<t>This appendix presents the complete tree of the Layer 0 Types data model. See <xref target="RFC8340"/> for an explanation of the symbols used. The data type of every leaf node is shown near the right end of the corresponding line.</t>

<figure anchor="fig-yang-tree"><artwork type="ascii-art"><![CDATA[
module: ietf-layer0-types

  grouping l0-label-range-info:
    +-- grid-type?   identityref
    +-- priority?    uint8
  grouping wson-label-start-end:
    +-- (grid-type)?
       +--:(dwdm)
       |  +-- dwdm-n?   dwdm-n
       +--:(cwdm)
          +-- cwdm-n?   cwdm-n
  grouping wson-label-step:
    +-- (l0-grid-type)?
       +--:(dwdm)
       |  +-- wson-dwdm-channel-spacing?   identityref
       +--:(cwdm)
          +-- wson-cwdm-channel-spacing?   identityref
  grouping wson-label-hop:
    +-- (grid-type)?
       +--:(dwdm)
       |  +-- (single-or-super-channel)?
       |     +--:(single)
       |     |  +-- dwdm-n?              dwdm-n
       |     +--:(super)
       |        +-- subcarrier-dwdm-n*   dwdm-n
       +--:(cwdm)
          +-- cwdm-n?                    cwdm-n
  grouping flexi-grid-label-range-info:
    +-- grid-type?    identityref
    +-- priority?     uint8
    +-- flexi-grid
       +-- slot-width-granularity?   identityref
       +-- min-slot-width-factor?    uint16
       +-- max-slot-width-factor?    uint16
  grouping flexi-grid-label-start-end:
    +-- flexi-n?   flexi-n
  grouping flexi-grid-label-step:
    o-- flexi-grid-channel-spacing?   identityref
    +-- flexi-ncfg?                   identityref
    +-- flexi-n-step?                 uint8
  grouping flexi-grid-frequency-slot:
    +-- flexi-n?   flexi-n
    +-- flexi-m?   flexi-m
  grouping flexi-grid-label-hop:
    +-- (single-or-super-channel)?
       +--:(single)
       |  +-- flexi-n?              flexi-n
       |  +-- flexi-m?              flexi-m
       o--:(super)
       |  o-- subcarrier-flexi-n* [flexi-n]
       |     +-- flexi-n?   flexi-n
       |     +-- flexi-m?   flexi-m
       +--:(multi)
          +-- frequency-slots
             +-- frequency-slot* [flexi-n]
                +-- flexi-n?   flexi-n
                +-- flexi-m?   flexi-m
  grouping wdm-label-range-info:
    +-- wdm-label-range
       +-- grid-type?    identityref
       +-- priority?     uint8
       +-- flexi-grid
          +-- slot-width-granularity?   identityref
          +-- min-slot-width-factor?    uint16
          +-- max-slot-width-factor?    uint16
  grouping wdm-label-start-end:
    +-- wdm-label
       +-- dwdm-n?    dwdm-n
       +-- cwdm-n?    cwdm-n
       +-- flexi-n?   flexi-n
  grouping wdm-label-step:
    +-- wdm-label-step
       +-- wson-dwdm-channel-spacing?   identityref
       +-- wson-cwdm-channel-spacing?   identityref
       +-- flexi-grid-cfg
          o-- flexi-grid-channel-spacing?   identityref
          +-- flexi-ncfg?                   identityref
          +-- flexi-n-step?                 uint8
  grouping wdm-label-hop:
    +-- wdm-label
       +-- (grid-type)?
          +--:(fixed-dwdm)
          |  +-- (fixed-single-or-multi-channel)?
          |     +--:(single)
          |     |  +-- dwdm-n?               dwdm-n
          |     +--:(multi)
          |        +-- subcarrier-dwdm-n*    dwdm-n
          +--:(cwdm)
          |  +-- cwdm-n?                     cwdm-n
          +--:(flexi-grid)
             +-- (single-or-super-channel)?
                +--:(single)
                |  +-- flexi-n?              flexi-n
                |  +-- flexi-m?              flexi-m
                o--:(super)
                |  o-- subcarrier-flexi-n* [flexi-n]
                |     +-- flexi-n?   flexi-n
                |     +-- flexi-m?   flexi-m
                +--:(multi)
                   +-- frequency-slots
                      +-- frequency-slot* [flexi-n]
                         +-- flexi-n?   flexi-n
                         +-- flexi-m?   flexi-m
  grouping transceiver-capabilities:
    +--ro supported-modes!
       +--ro supported-mode* [mode-id]
          +--ro mode-id?                     string
          +--ro (mode)
             +--:(g.698.2)
             |  +--ro g.698.2
             |     +--ro standard-mode               standard-mode
             |     +--ro line-coding-bitrate*        identityref
             |     +--ro transceiver-tuning-range
             |     |  +--ro min-central-frequency?
             |     |  |       frequency-thz
             |     |  +--ro max-central-frequency?
             |     |  |       frequency-thz
             |     |  +--ro transceiver-tunability-granularity?
             |     |          frequency-ghz
             |     +--ro tx-channel-power-min?       power-dbm
             |     +--ro tx-channel-power-max?       power-dbm
             |     +--ro rx-channel-power-min?       power-dbm
             |     +--ro rx-channel-power-max?       power-dbm
             |     +--ro rx-total-power-max?         power-dbm
             +--:(organizational-mode)
             |  +--ro organizational-mode
             |     +--ro operational-mode            operational-mode
             |     +--ro organization-identifier
             |     |       organization-identifier
             |     +--ro line-coding-bitrate*        identityref
             |     +--ro transceiver-tuning-range
             |     |  +--ro min-central-frequency?
             |     |  |       frequency-thz
             |     |  +--ro max-central-frequency?
             |     |  |       frequency-thz
             |     |  +--ro transceiver-tunability-granularity?
             |     |          frequency-ghz
             |     +--ro tx-channel-power-min?       power-dbm
             |     +--ro tx-channel-power-max?       power-dbm
             |     +--ro rx-channel-power-min?       power-dbm
             |     +--ro rx-channel-power-max?       power-dbm
             |     +--ro rx-total-power-max?         power-dbm
             +--:(explicit-mode)
                +--ro explicit-mode
                   +--ro transceiver-tuning-range
                   |  +--ro min-central-frequency?
                   |  |       frequency-thz
                   |  +--ro max-central-frequency?
                   |  |       frequency-thz
                   |  +--ro transceiver-tunability-granularity?
                   |          frequency-ghz
                   +--ro tx-channel-power-min?       power-dbm
                   +--ro tx-channel-power-max?       power-dbm
                   +--ro rx-channel-power-min?       power-dbm
                   +--ro rx-channel-power-max?       power-dbm
                   +--ro rx-total-power-max?         power-dbm
                   +--ro compatible-modes
                      +--ro supported-application-code*
                      |       -> ../../../../supported-mode/mode-id
                      +--ro supported-organizational-mode*
                              -> ../../../../supported-mode/mode-id
  grouping standard-mode:
    +-- standard-mode?   standard-mode
  grouping organizational-mode:
    +-- operational-mode?          operational-mode
    +-- organization-identifier?   organization-identifier
  grouping penalty-value:
    +-- penalty-value    union
  grouping explicit-mode:
    +--ro line-coding-bitrate?                identityref
    +--ro bitrate?                            uint16
    +--ro max-diff-group-delay?               decimal-2
    +--ro max-chromatic-dispersion?           decimal-2
    +--ro cd-penalty* [cd-value]
    |  +--ro cd-value?        decimal-2
    |  +--ro penalty-value    union
    +--ro max-polarization-mode-dispersion?   decimal-2
    +--ro pmd-penalty* [pmd-value]
    |  +--ro pmd-value?       decimal-2
    |  +--ro penalty-value    union
    +--ro max-polarization-dependent-loss     power-loss-or-null
    +--ro pdl-penalty* [pdl-value]
    |  +--ro pdl-value?       power-loss
    |  +--ro penalty-value    union
    +--ro available-modulation-type?          identityref
    +--ro min-OSNR?                           snr
    +--ro rx-ref-channel-power?               power-dbm
    +--ro rx-channel-power-penalty* [rx-channel-power-value]
    |  +--ro rx-channel-power-value?   power-dbm
    |  +--ro penalty-value             union
    +--ro min-Q-factor?                       decimal-2
    +--ro available-baud-rate?                decimal64
    +--ro roll-off?                           decimal64
    +--ro min-carrier-spacing?                frequency-ghz
    +--ro available-fec-type?                 identityref
    +--ro fec-code-rate?                      decimal64
    +--ro fec-threshold?                      decimal64
    +--ro in-band-osnr?                       snr
    +--ro out-of-band-osnr?                   snr
    +--ro tx-polarization-power-difference?   power-ratio
    +--ro polarization-skew?                  decimal-2
  grouping common-standard-organizational-mode:
    +--ro line-coding-bitrate*   identityref
  grouping transceiver-tuning-range:
    +-- min-central-frequency?                frequency-thz
    +-- max-central-frequency?                frequency-thz
    +-- transceiver-tunability-granularity?   frequency-ghz
  grouping common-all-modes:
    +--ro transceiver-tuning-range
    |  +--ro min-central-frequency?                frequency-thz
    |  +--ro max-central-frequency?                frequency-thz
    |  +--ro transceiver-tunability-granularity?   frequency-ghz
    +--ro tx-channel-power-min?       power-dbm
    +--ro tx-channel-power-max?       power-dbm
    +--ro rx-channel-power-min?       power-dbm
    +--ro rx-channel-power-max?       power-dbm
    +--ro rx-total-power-max?         power-dbm
  grouping common-transceiver-param:
    +-- line-coding-bitrate?   identityref
    +-- tx-channel-power?      power-dbm-or-null
    +--ro rx-channel-power?      power-dbm-or-null
    +--ro rx-total-power?        power-dbm-or-null
  grouping common-transceiver-configured-param:
    +-- line-coding-bitrate?   identityref
    +-- tx-channel-power?      power-dbm-or-null
  grouping common-transceiver-readonly-param:
    +--ro rx-channel-power?   power-dbm-or-null
    +--ro rx-total-power?     power-dbm-or-null
  grouping tunnel-attributes:
    +-- wavelength-assignment?   identityref
  grouping frequency-range:
    +-- lower-frequency    frequency-thz
    +-- upper-frequency    frequency-thz
  grouping frequency-range-with-identifier:
    +-- frequency-range-id?   uint16
    +-- frequency-range
       +-- lower-frequency    frequency-thz
       +-- upper-frequency    frequency-thz
  grouping path-constraints:
    +-- gsnr-extra-margin?   snr
  grouping path-properties:
    +--ro estimated-gsnr?          snr
    +--ro estimated-eol-gsnr?      snr
    +--ro estimated-lowest-gsnr?   snr
]]></artwork></figure>

</section>
<section anchor="changes-bis"><name>Changes from RFC 9093</name>

<t>This version adds new identities, data types, and groupings to the 'ietf-layer0-types' YANG module. It also fixes few bugs in <xref target="RFC9093"/>.</t>

<t>The following new YANG identities have been added to the 'ietf-layer0-types' module:</t>

<t><list style="symbols">
  <t>cwdm-ch-spc-type;</t>
  <t>flexi-ncfg-type;</t>
  <t>flexi-ncfg-6p25gh;</t>
  <t>modulation;</t>
  <t>dpsk;</t>
  <t>qpsk;</t>
  <t>dp-qpsk;</t>
  <t>qam8;</t>
  <t>dp-qam8;</t>
  <t>qam16;</t>
  <t>dp-qam16;</t>
  <t>qam32;</t>
  <t>dp-qam32;</t>
  <t>qam64;</t>
  <t>dp-qam64;</t>
  <t>fec-type;</t>
  <t>g-fec;</t>
  <t>super-fec;</t>
  <t>no-fec;</t>
  <t>sc-fec;</t>
  <t>o-fec;</t>
  <t>c-fec;</t>
  <t>line-coding;</t>
  <t>nrz-2p5g;</t>
  <t>nrz-otu1;</t>
  <t>nrz-10g;</t>
  <t>nrz-otu2;</t>
  <t>otl4.4-sc;</t>
  <t>foic1.4-sc;</t>
  <t>wavelength-assignment;</t>
  <t>first-fit-wavelength-assignment;</t>
  <t>random-wavelength-assignment;</t>
  <t>least-loaded-wavelength-assignment;</t>
  <t>lower-first-wavelength-assignment;</t>
  <t>upper-first-wavelength-assignment;</t>
  <t>type-power-mode;</t>
  <t>power-spectral-density;</t>
  <t>carrier-power;</t>
  <t>switching-wson-lsc;</t>
  <t>switching-flexi-grid-lsc.</t>
</list></t>

<t>The following new YANG data types have been added to the 'ietf-layer0-types' module:</t>

<t><list style="symbols">
  <t>standard-mode</t>
  <t>organization-identifier</t>
  <t>operational-mode</t>
  <t>frequency-thz</t>
  <t>frequency-ghz</t>
  <t>snr</t>
  <t>snr-or-null</t>
  <t>decimal-2</t>
  <t>decimal-2-or-null</t>
  <t>power-gain</t>
  <t>power-gain-or-null</t>
  <t>power-loss</t>
  <t>power-loss-or-null</t>
  <t>power-ratio</t>
  <t>power-ratio-or-null</t>
  <t>power-dbm</t>
  <t>power-dbm-or-null</t>
  <t>decimal-5</t>
  <t>decimal-5-or-null</t>
  <t>psd</t>
  <t>psd-or-null</t>
</list></t>

<t>The following new YANG groupings have been added to the 'ietf-layer0-types' module:</t>

<t><list style="symbols">
  <t>wdm-label-start-end</t>
  <t>wdm-label-step</t>
  <t>wdm-label-hop</t>
  <t>wdm-label-range-info</t>
  <t>transceiver-capabilities</t>
  <t>standard-mode</t>
  <t>organizational-mode</t>
  <t>penalty-value</t>
  <t>explicit-mode</t>
  <t>common-standard-organizational-mode</t>
  <t>transceiver-tuning-range</t>
  <t>common-all-mode</t>
  <t>common-transceiver-param</t>
  <t>common-transceiver-configured-param</t>
  <t>common-transceiver-readonly-param</t>
  <t>tunnel-attributes</t>
  <t>frequency-range</t>
  <t>frequency-range-with-identifier</t>
  <t>path-constraints</t>
  <t>path-properties</t>
</list></t>

<t>The following YANG identities have been obsolted (bug fixing) in the 'ietf-layer0-types' module:</t>

<t><list style="symbols">
  <t>flexi-ch-spc-type;</t>
  <t>flexi-ch-spc-6p25ghz.</t>
</list></t>

<t>The case super within the flexi-grid-label-hop has been obsolted (bug fixing).</t>

<t>The flexi-grid-channel-spacing data node in flexi-grid-label-step grouping has been obsoleted (bug fixing).</t>

<t>The default value of the min-slot-width-factor data node within flexi-grid-label-range-info grouping has been removed (bug fixing).</t>

</section>
<section numbered="false" anchor="acknowledgments"><name>Acknowledgments</name>

<t>The authors and the working group give their sincere thanks to Robert
Wilton for the YANG doctor review and to Adrian Farrel and Tom Petch for their comments
during the model and document development.</t>

<t>This document was prepared using kramdown.</t>

</section>

    <section anchor="contributors" numbered="false" toc="include" removeInRFC="false">
        <name>Contributors</name>
    <contact initials="H." surname="Zheng" fullname="Haomian Zheng">
      <organization>Huawei</organization>
      <address>
        <email>zhenghaomian@huawei.com</email>
      </address>
    </contact>
    <contact initials="D." surname="King" fullname="Daniel King">
      <organization>University of Lancaster</organization>
      <address>
        <email>d.king@lancaster.ac.uk</email>
      </address>
    </contact>
    <contact initials="G." surname="Galimberti" fullname="Gabriele Galimberti">
      <organization>Nokia</organization>
      <address>
        <email>gabriele.galimberti@nokia.com</email>
      </address>
    </contact>
    <contact initials="E." surname="Griseri" fullname="Enrico Griseri">
      <organization>Nokia</organization>
      <address>
        <email>Enrico.Griseri@nokia.com</email>
      </address>
    </contact>
    <contact initials="D." surname="Dhody" fullname="Dhruv Dhody">
      <organization>Huawei</organization>
      <address>
        <email>dhruv.ietf@gmail.com</email>
      </address>
    </contact>
    <contact initials="B. Y." surname="Yoon" fullname="Bin Yeong Yoon">
      <organization>ETRI</organization>
      <address>
        <email>byyun@etri.re.kr</email>
      </address>
    </contact>
    <contact initials="R." surname="Vilalta" fullname="Ricard Vilalta">
      <organization>CTTC</organization>
      <address>
        <email>ricard.vilalta@cttc.es</email>
      </address>
    </contact>
    <contact initials="Y." surname="Lee" fullname="Young Lee">
      <organization>Samsung</organization>
      <address>
        <email>younglee.tx@gmail.com</email>
      </address>
    </contact>
    <contact initials="V." surname="Lopez" fullname="Victor Lopez">
      <organization>Nokia</organization>
      <address>
        <email>victor.lopez@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="G." surname="Grammel" fullname="Gert Grammel">
      <organization>Juniper</organization>
      <address>
        <email>ggrammel@juniper.net</email>
      </address>
    </contact>
    </section>

  </back>

<!-- ##markdown-source:
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
jFW5TbK1WRSOjXq7FhVLXxNgfeqHyvS8kqR9RCDYB3WajlWybwlDmbluMBNy
01zIra9AfUNZ1wrVl6ASV4T8RRanRv4m41ZJMQ8vRl/LdrDY2ldfz+9MFk24
Z+eivWlK6V5cn53vrFyCg73+/olwiapy3jEWyIcU8tIJXmdpkQ7TWWkduuQi
tGMg5qPFbby7sZLdIJ1pPiBK3cKC6Uq3km3wDXlvvG1xG6dghgKH7suwmCh6
egmvXM4HBec3d6DatzVFy6sGEhWsKtlUXd9009uASyl+WsGsmnEp2YtgVp+A
S30Z3wgx+HCaxsPIwyS925L3pZIIyyTYxt5nvCS5kfGclhF5geVqxj8ktrdF
3pEA3XFRB8Gqat1e7xH/nwJtl23bs/sD296SVTxP7GT3Wzvb1kD++YhZ/Qdg
2KhTpms14H7AiWpGgp+Pxt98W9DEzFeqBqMdXK59Kwq428OUeRb1sDnRgZ/a
+2cDHDnnj+YiDz2LPPxMizzc6CKfrV7kYfNFPhN3tIZ0xIuDJVVajBP44/Ov
9HoLvUJgAeOtlFV8KHrH5LCyEvdvSwK55dRRDMkOVunMlWJIduDTmZuKISV4
TGn0NYkh+eJnyqKvBJ6nnk+FzHuhSqkTk+bVc3dZVAx7q2UeUYnw2rXzEbfi
kF+/DPQfp/BTkyG73FclT32pWU7sLVIPqjY6gcnLae52uGtP85A/ZHuH/F+g
JX6DTe6JUq35LYhhooTh56e7zy6WV9BdZVFXtjm6S+ZAdnEvArLb6xt33fwj
K8Xsan8aSr2BM+bGKinT5Ju/CeVgmtboBjI3oH7VqyL8ps5H9cJCDMOd/GgT
UjJCSWu/NiHVa+4hCINSY0moNjnR4MKX0N4vVWc0/FQcc+rAIZDauLSXV6bS
a92eEn78u4RgaOk9W8Wi5ce2glX50uqPyWU+lhaCFqq8DsEszgu8XZFRjp92
XXJaGMwX8NCVISxSEj8NfLm5lzLx88+2jA85Frc9Va4THmJjoRyi9E+j6pRl
TV3Z00rBo4NA3eMXd5jJohllRDTE0UPPjyU4rVsX38+mOVP2Yty9GNdJTU+T
qpeKG5hVp0nZ3mvb9J8mybnbc3YWUjVNihC6yszZ1EpW4z3ufqyuifFDe6y2
cgRNv05hbFgBwSRNQgiV79WqcKnAgkHS/q29dQmzmS/npFBGQFDFHV6F6qCX
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
XijVJEP+X0YjHnSmttzgyHo3fL/q3WoMeHYpf4dwKv5c0YPcT6k1/yYbxBhu
OJ74VrGmBY1cblPiSQZI2naFCFsxZfOnuf5pXosNe1+u3GoVm8yByfiY4Lnv
zr3vqkq8qXcbpvYGFP1/y/5T/PW30l6uwpbnHQdtesp0p+3uZXt1nOvt8gse
GO23K8H0vFa1wL6a5nqBnV/NXVnPRlg9J2FVzIStwU9YO5bC2nMVs3p9iZ2o
H82ZGbKjxOhNnj4s/VjPnUxITDFvPzf7W0Ogt5HdnrXEytEGsttzzRIyGvLO
UrumHNQqfLxiZX26CBO7XhfqNbe+1EtqC/VanVUrKKyJjuKQnN1hiTOtVlXK
/XnVlX+s1Fgccldo0wWyyzxxtYyxOysjzIKukdTxN1ohftTHI4fMDhsLJLMR
a8zym4go9fFThPlzvdCqebNuQnaz1XPyvF8lz6rKt6pdnaVu3c9/MbZ36VeY
hqhl8zebbOFN8YOf1HkxjFKbLjYqk/lJV9Rkcn76h2wnfi79qsG26oG4sBi/
VXfh8ZH8Vr7n57VOB1V+5r4WambeUJAfKppIZmW5O9R374vY2Fz3qwMrqsaS
HyvUoga3HldzSXnKgatN8/B9i+Y+R/cHNW87uuM4rvdcRXPaU57AwKr95Xm1
Gp5SxRXj4/5W04u/jkkdubRo8vuWXrf737f0V7ylrVooZaWFd269VKHYNKZt
BXtz2lZNGhCf230D2n5A961pW7WXnxra5p+1abu++UrqMpuvQdv1zduO3pa2
zeZuSdZqldvSVt2qpt9WtJNrGZBX6IpakQ3H9kjPquHlp+nw/sqC+pBuPUY8
u8puXYk43Y0rtg2l3ivRqY1fGmPTakHtLxSmAbGrbTHGa2x1qspBmecaj7Av
nU089mZoWfW2+TGsaJpVuVVmSpYImc7Caecr5/LDina6SAgcymRBCX4q+4fx
Dj3+wd+Req8SyyaQdVUgfqgA0kjJD1CqlO0OmOr5D5sG00mejp9yznQTXp2j
G+GVOZxdeOVzmwtiny0BrsywbKy+n0Zl5to6Is2TzGjhSw7rtrb5cQX71wjy
Z3J1sOV/6YfSaNVYU5/SehvZWasQ4SNLT+7RUnOV/8xEhUgLWYd0XztPGsVS
F2VNwoVVZq8rj+4nESsZXQXIPmitpHAt2pk51qowZJOkm1fL18pusSr7kiar
TNWHFFTlZhryDGbSSpv8OivEzrelJVqZbURLQL+G7UJe1nnlrc66bRvoxqxM
tZUpKEwU1Z40VhwtVgO/4vDQooP1UNBe52+r5LfV6tuq8e309pWB/5qWK1Qy
362/i40fnIE9wtudYLMmxhx/KE3PaNImyP9Tz7h5ZPHJCvy0RU4tNKVoU+Py
0BfgWeP75IQdGQh1QhQr+ZcbH+h5sWn4m+E5UooHwznYZwH3JXnyawz9GhNw
w68M/yY3FooOhUlWaq2jdUyasYN1DOZpi+VyAM0P9a8ZsSoSoHJ0h3Dp/AaL
n1HGcspNik6iT/pP9tmv34hM5gHGRAjXz3ciH184GmHk4J3loK68MrmXuulm
zcOztku+lNuml24PM6RQxV+8vQZ4oP/b5STnARw8rODJvgrP0J6+CAj1o6Hh
AQ63mH/RihDzgSA8PTsdcZ88nIIaKVMZm34BvkdHi73DyRQfmtVYAjZa5G/x
37+Lf0eLQP7593B+LB+JP+FfDHSUz/jf8Mf+nn7I/4Y/jg70Q/63zrwMJIma
LP7Bb7DFlyRVj4fyL/VIPbGSj0Cj7EOwtzhUf6fFciD/HvTNxwRaWswOegdB
Tl2N03g4UN8qItDhtTgDQh3HRVD5CmzzUTqv/n0WhTmeQDGoq+YtzhtouMqX
BFOofwkRLaU21bgPBN+WGVoDzEkSY2XxQCbl5u8T+oH7Ubb5gDugcvzop6YT
XD6sJnW92dYkddt0VWlg6pTNVZ3AYZWBo6UFxHHov0qQBYb6b/xt/M6ROAEO
a30pvUGGgMBnaQisw4n1rfQOaleBR+Bq2A7Nv832+Yj/Vz2rWiPNANdbIo8r
WKfkfhXYHkWdkiMdudl1gkpvhRW0oBfdshzAd/vmI2hylOuUTj76eBK4pxr9
pKT0+n9yFUX/W7YKhxC5ilWnrGWUlRNHi0H8OGqCfKRlv0sp1UIrvc3TGca3
dEECojyE13dkGMsKsuEsxCvFxEMutD4I7kLlCkhamJnWfd64AGBeA5/kVpUO
eDpSDKfi9X7WepM9VlQxmAwhtwr8eN0zjcHFNGtc2D1gZNE8fVcGAnQqXgwm
Gn2/RZG/PIb1dIjZY2bRaELh/xxaDHqU9WERUAx25AkpMU4Liwni4zjDnFND
jIzDhBdvSYF6k8IYReeXeFaAAibDg7ksSGl+WfQuBtZDfafsdJTFYcKegwAS
uetvQL17HYGcka1hHNwfBN5omcmwcx7Iii1kZBhgGYRhSrWLekIVVL/dAYIW
WQS7SSVEeQsba0S5oP4/HCFXPR/IAQA=

-->

</rfc>

