



CCAMP Working Group                                        S. Homma, Ed.
Internet-Draft                                                       NTT
Intended status: Standards Track                           H. Irino, Ed.
Expires: 13 November 2026                                       NTT West
                                                                 T. Mano
                                                                     NTT
                                                               Y. Tochio
                                                                 1Finity
                                                                R. Rokui
                                                                   Ciena
                                                             12 May 2026


             A YANG Data Model for CMIS Access and Control
                  draft-hi-ccamp-cmis-control-yang-02

Abstract

   This document provides YANG data models to access to and control CMIS
   for controlling pluggable Digital Coherent Optics transceivers
   equipped in a router or a switch from outside.  CMIS has custom pages
   which enables to be defined by the module vendor for its own usage,
   and allows to extend the uses of the optics devices.  These YANG
   modules also allow the utilization of CMIS custom pages as a generic
   control mechanism.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at https://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on 13 November 2026.

Copyright Notice

   Copyright (c) 2026 IETF Trust and the persons identified as the
   document authors.  All rights reserved.




Homma, et al.           Expires 13 November 2026                [Page 1]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents (https://trustee.ietf.org/
   license-info) in effect on the date of publication of this document.
   Please review these documents carefully, as they describe your rights
   and restrictions with respect to this document.  Code Components
   extracted from this document must include Revised BSD License text as
   described in Section 4.e of the Trust Legal Provisions and are
   provided without warranty as described in the Revised BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
     1.1.  Terminology and Notations . . . . . . . . . . . . . . . .   3
     1.2.  Acronyms  . . . . . . . . . . . . . . . . . . . . . . . .   4
     1.3.  Tree Diagram  . . . . . . . . . . . . . . . . . . . . . .   5
     1.4.  Prefixes in Data Node Names . . . . . . . . . . . . . . .   5
   2.  Usecases  . . . . . . . . . . . . . . . . . . . . . . . . . .   5
     2.1.  Centralized Control of Pluggable DCO Transceivers . . . .   6
     2.2.  Control of Non-supported DSP Features by NOS  . . . . . .   7
   3.  CMIS Page Classification  . . . . . . . . . . . . . . . . . .   8
   4.  CMIS Access and Control Modules . . . . . . . . . . . . . . .   9
     4.1.  ietf-cmis-control . . . . . . . . . . . . . . . . . . . .  10
     4.2.  ietf-cmis-control-primitive . . . . . . . . . . . . . . .  16
     4.3.  ietf-cmis-control-action  . . . . . . . . . . . . . . . .  20
     4.4.  ietf-cmis-control-rpc . . . . . . . . . . . . . . . . . .  24
     4.5.  ietf-cmis-monitor . . . . . . . . . . . . . . . . . . . .  28
   5.  Security Considerations . . . . . . . . . . . . . . . . . . .  34
   6.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  34
   7.  References  . . . . . . . . . . . . . . . . . . . . . . . . .  35
     7.1.  Normative References  . . . . . . . . . . . . . . . . . .  35
     7.2.  Informative References  . . . . . . . . . . . . . . . . .  36
   Appendix A.  Contributors . . . . . . . . . . . . . . . . . . . .  37
   Appendix B.  Implementation Patterns  . . . . . . . . . . . . . .  37
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  39

1.  Introduction

   Pluggable Digital Coherent Optics (DCO) transceivers enable routers
   or switches to directly connect to optical network (e.g., DWDM or
   OTN).  Pluggable DCO transceivers, such as CFP2-DCO and QSFP-DD DCO,
   implement optical connectors (i.e., Tx and Rx) and a Digital Signal
   Processor (DSP), and provide higher data rates (100 Gbps, 400 Gbps,
   and beyond) and flexible data transport.

   Pluggable DCO transceivers, equipped by a platform device (e.g., a
   switch or a router), are generally controlled by the network OS
   running on the device using Content Management Interoperability
   Specifications (CMIS), which is an open standard protocol designed to



Homma, et al.           Expires 13 November 2026                [Page 2]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


   facilitate interoperability between management systems.  The
   specification is defined in [OIF-CMIS].  CMIS also allows vendor-
   specific extensions of its transceiver features by using custom
   pages.  For example, CMIS custom pages can be used for non-
   standardized functions.

   However, the continuous emergence of new transceiver standards makes
   it highly challenging for Network OS (NOS) vendors to support the
   full feature set of every transceiver immediately.  As a result, a
   NOS might support only a basic subset of a DCO transceiver's
   capabilities.  This document defines a YANG data model for accessing
   and controlling CMIS from outside the platform device, allowing an
   external management system to configure and monitor advanced features
   directly without waiting for NOS upgrades.

1.1.  Terminology and Notations

   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 [RFC2119], [RFC8340] when, and only when, they appear in all
   capitals, as shown here.

   The terms and their definitions used in this specification are
   described below:

   *  CMIS (Common Management Interface Specifications): A generic
      management communication interface together with a generic
      management interaction protocol between host and managed modules.
      The specification is defined in [OIF-CMIS];

   *  NACM (Network Configuration Access Control Model): A standard
      access control model to restrict NETCONF or RESTCONF protocol
      access for particular users to a preconfigured subset of all
      available NETCONF or RESTCONF protocol operations and content.
      The specification is defined in [RFC8341].

   *  NETCONF (Network Configuration Protocol): Mechanisms to install,
      manipulate, and delete the configuration of network devices.  The
      definitions and specification is described in [RFC6241];

   *  RESTCONF: An HTTP-based protocol that provides a programmatic
      interface for accessing data defined in YANG, using the datastore
      concepts defined in NETCONF.  The specification is defined in
      [RFC8040].

   The following terms of NETCONF defined in [RFC6241] are also used in
   this specification:



Homma, et al.           Expires 13 November 2026                [Page 3]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


   *  (NETCONF) client

   *  configuration data

   *  datastore

   *  message

   *  remote procedure call (RPC)

   *  (NETCONF) server

   *  state data

   *  (NETCONF) user

   This document makes use of the terms defined in [RFC7950].

1.2.  Acronyms

   The following acronyms are used in this document:

   CE      Customer Edge

   CDB     Command Data Block

   CSP     Communication Service Provider

   DCO     Digital Coherent Optics

   DSP     Digital Signal Processor

   DWDM    Dense Wavelength Division Multiplexing

   GSNR    Generalized Signal-to-Noise Ratio

   i2c     Inter-Integrated Circuit

   NOS     Network Operating System

   NMS     Network Management System

   OTN     Optical Transport Network

   QoT     Quality of Transmission

   TPA     Third Party Application




Homma, et al.           Expires 13 November 2026                [Page 4]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


   WDM     Wavelength Division Multiplexing

1.3.  Tree Diagram

   The tree diagrams used in this document follow the notation defined
   in [RFC8340].

1.4.  Prefixes in Data Node Names

   In this document, names of data nodes and other data model objects
   are prefixed using the standard prefix associated with the
   corresponding YANG imported modules.  The proposed modules are
   augments to the ietf-interface [RFC7223].  The details of the modules
   are described in Section 4.

        +===============+=============================+===========+
        | Prefix        | YANG module                 | Reference |
        +===============+=============================+===========+
        | if            | ietf-interfaces             | [RFC7223] |
        +---------------+-----------------------------+-----------+
        | cmis-ctrl     | ietf-cmis-control           | RFC XXXX  |
        +---------------+-----------------------------+-----------+
        | cmis-ctrl-pm  | ietf-cmis-control-primitive | RFC XXXX  |
        +---------------+-----------------------------+-----------+
        | cmis-ctrl-act | ietf-cmis-control-action    | RFC XXXX  |
        +---------------+-----------------------------+-----------+
        | cmis-ctrl-rpc | ietf-cmis-control-rpc       | RFC XXXX  |
        +---------------+-----------------------------+-----------+
        | cmis-mon      | ietf-cmis-monitor           | RFC XXXX  |
        +---------------+-----------------------------+-----------+

              Table 1: Prefixes and corresponding YANG module

   Note: The RFC Editor will replace XXXX with the number assigned to
   the RFC once this draft becomes an RFC.

2.  Usecases

   This section describes usecases of this YANG data model for accessing
   to and control CMIS.











Homma, et al.           Expires 13 November 2026                [Page 5]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


2.1.  Centralized Control of Pluggable DCO Transceivers

   This YANG data model disaggregates management features for pluggable
   DCO transceivers which a platform device equips with from its Network
   OS (NOS), enabling centralized control of such transceivers.  For
   example, when a pluggable DCO transceiver is installed in a Customer
   Edge (CE) router connected to a DWDM/OTN network provided by a
   Communication Service Provider (CSP), the transceiver configurations
   (e.g., assigned wavelength, output power) strongly depend on the
   CSP's optical network design, such as the distance to the next node
   and the status of adjacent channels.  Therefore, the CSP often needs
   to control the CE-equipped DCO transceiver as part of a managed
   service.  If the customer alters these settings freely, it may cause
   severe interference with other active wavelengths in the CSP network.
   From a security and operational stability perspective, it is highly
   desirable to place the transceiver strictly under the CSP's
   management, as shown in Figure 1.

                              +-------------+
                        . . .>| Controller  |< . .
                        .     +-----A-------+    .
                        .           .            .
        ,---------.     .           .            .     ,---------.
       (           )    .       ,---V----.       .    (           )
      ( Customer +------V+     (          )     +V------+ Customer )
     (   Network | CE [DCO]---(  DWDM/OTN  )---[DCO] CE |  Network  )
      (          +-------+     (          )     +-------+          )
       `-----------'            `--------'            `-----------'

     `-------v-------' `------------v------------' `--------v------'
      Customer Domain    Service Provider Domain    Customer Domain

                                         Legend
                                         <. . . > : C-plane Signals

             Figure 1: Centralized Control of Pluggable Modules

   Furthermore, to increase the flexibility in combining various NOSs
   and pluggable DCO transceivers, an architecture that allows a
   centralized controller to manage the transceivers independently of
   the NOS's support status is an effective approach.  Due to
   differences in DSP implementations among vendors and the continuous
   release of new specifications (e.g., 800G, 1.6T, and beyond), a NOS
   might only support a basic subset of a new transceiver's
   capabilities.  This data model allows an external controller to
   configure and utilize advanced DSP features without waiting for NOS
   software upgrades.




Homma, et al.           Expires 13 November 2026                [Page 6]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


   Additionally, this decoupled management architecture is highly
   applicable to emerging advanced optical technologies such as OpenXR
   (XR Optics).  OpenXR adopts an architecture where DSP management is
   decoupled from the host NOS, and this YANG model serves as an
   effective means to realize this decoupling.  A key feature of OpenXR
   is point-to-multipoint (P2MP) coherent connectivity, where digital
   subcarriers within a single wavelength are divided and assigned to
   multiple remote transceivers.  In a P2MP deployment where a single
   hub serves multiple customers, the optical signal is broadcast via
   passive splitters.  Each leaf transceiver physically receives the
   entire optical spectrum but uses its DSP to selectively extract and
   demodulate only its assigned subcarriers.  If a customer at the CE is
   allowed to freely reconfigure the transceiver's subcarrier
   assignments via CMIS, they could potentially tune into subcarriers
   allocated to other customers, leading to severe security risks such
   as eavesdropping.  Thus, it is crucial that the CSP tightly controls
   the subcarrier allocations and DSP settings, explicitly restricting
   the host's access to prevent such vulnerabilities.

   If CEs delegate whole the DCO transceivers management to the
   controller, the controller needs to monitor the DCO transceivers for
   detecting their failure occurred.  For this case, notification-based
   YANG would be used Section 4.5.

2.2.  Control of Non-supported DSP Features by NOS

   The rapid evolution of optical technologies makes it difficult for
   NOS implementations, especially Open Source Software (OSS) NOSs like
   SONiC, to immediately support all features of a new transceiver.
   Often, a NOS utilizes only a basic subset (e.g., 30%) of a
   transceiver's capabilities required for standard link bring-up.  By
   using this YANG data model, operators can complement the missing
   capabilities of the NOS in two ways:

   *  Standard Pages: Operators can access advanced features, detailed
      alarms, and performance monitors defined in standard CMIS pages
      that the NOS has not yet implemented.

   *  Custom Pages: Operators can obtain detailed DSP information and
      configure vendor-specific extensions contained in CMIS custom
      pages even if the modeling of the data is not standardized.
      Example uses of such detailed DSP information include fiber
      sensing (Ref. [ECOC48923.2020.9333176]), physical layer monitoring
      (Ref. [JLT.2021.3139167]), and accurate estimation (e.g., GSNR)
      (Ref. [JOCN.505729]).






Homma, et al.           Expires 13 November 2026                [Page 7]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


3.  CMIS Page Classification

   To safely control CMIS modules from remote systems, it is essential
   to classify CMIS pages based on their management responsibility.
   Managing pages that are already under the control of the Host Network
   OS (NOS) can lead to conflicts and service disruption.  Therefore,
   CMIS pages are categorized as follows based on the OIF CMIS and
   C-CMIS specifications:

   +=================+==========+=========================+===========+
   | Category        | Page     | Description             | Remote    |
   |                 | Number   |                         | Control   |
   +=================+==========+=========================+===========+
   | Lower Memory    | N/A      | Interrupt Flags and     | No        |
   |                 |          | Module Status.  Reading |           |
   |                 |          | may cause Clear-on-Read |           |
   |                 |          | (CoR) side effects.     |           |
   +-----------------+----------+-------------------------+-----------+
   | Base EEPROM &   | 00h, 01h | Module ID, Vendor       | Read-Only |
   | Advertising     |          | Information, and        |           |
   |                 |          | Supported Applications  |           |
   |                 |          | Advertising.            |           |
   +-----------------+----------+-------------------------+-----------+
   | Thresholds &    | 02h      | Alarm/Warning           | Read-Only |
   | Monitors        |          | thresholds and generic  |           |
   |                 |          | monitors.               |           |
   +-----------------+----------+-------------------------+-----------+
   | Datapath        | 10h, 11h | Datapath                | May       |
   | Control &       |          | initialization,         |           |
   | Status          |          | Application selection,  |           |
   |                 |          | and Lane Status/Alarms. |           |
   +-----------------+----------+-------------------------+-----------+
   | Timing & Tx/Rx  | 12h      | Timing characteristics  | May       |
   | Characteristics |          | and tunable laser       |           |
   |                 |          | controls.               |           |
   +-----------------+----------+-------------------------+-----------+
   | Active          | 13h, 14h | PRBS generation/        | May       |
   | Diagnostics     |          | checking, Loopbacks,    |           |
   |                 |          | and Diagnostic          |           |
   |                 |          | counters.               |           |
   +-----------------+----------+-------------------------+-----------+
   | Advanced        | 20h -    | Versatile Diagnostics   | May       |
   | Diagnostics     | 2Fh      | Monitor (VDM)           |           |
   | (VDM)           |          | configuration and real- |           |
   |                 |          | time values.            |           |
   +-----------------+----------+-------------------------+-----------+
   | Coherent Media  | 30h -    | C-CMIS media            | May       |
   | Settings        | 3Fh      | configuration (Grid,    |           |



Homma, et al.           Expires 13 November 2026                [Page 8]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


   |                 |          | Frequency) and DSP      |           |
   |                 |          | monitors (OSNR, CD,     |           |
   |                 |          | DGD).                   |           |
   +-----------------+----------+-------------------------+-----------+
   | Advanced        | 40h -    | C-CMIS extended         | May       |
   | Coherent        | 4Fh      | features such as FlexO  |           |
   | Features        |          | and Out-of-Band (OOB)   |           |
   |                 |          | messaging.              |           |
   +-----------------+----------+-------------------------+-----------+
   | Firmware &      | 9Fh -    | Command Data Block      | May       |
   | Messaging (CDB) | AFh      | (CDB) used for Firmware |           |
   |                 |          | updates and complex     |           |
   |                 |          | messaging.              |           |
   +-----------------+----------+-------------------------+-----------+
   | Vendor Specific | B0h -    | Proprietary extension   | May       |
   | Extensions      | FFh      | pages.  Remote control  |           |
   |                 |          | MUST be coordinated     |           |
   |                 |          | with Host NOS.          |           |
   +-----------------+----------+-------------------------+-----------+
   | Reserved &      | 03h-0Fh, | CMIS reserved pages and | May       |
   | Minor Optional  | 15h-1Fh, | minor optional          |           |
   |                 | 50h-9Eh  | features.  Remote       |           |
   |                 |          | access depends on Host  |           |
   |                 |          | NOS support.            |           |
   +-----------------+----------+-------------------------+-----------+

                Table 2: Detailed CMIS Page Classification

   The 'remote-write-allowed-pages' and 'remote-read-allowed-pages'
   lists defined in the YANG model are used to clarify which pages are
   delegated to the remote system based on this classification.

4.  CMIS Access and Control Modules

   This document defines the following YANG modules for the management
   of CMIS-capable pluggable DCO transceivers.

   *  ietf-cmis-control (base model, mandatory)

   *  ietf-cmis-control-primitive (optional)

   *  ietf-cmis-control-rpc (optional)

   *  ietf-cmis-control-action (optional)

   *  ietf-cmis-monitor (optional)





Homma, et al.           Expires 13 November 2026                [Page 9]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


   Each module is an augment to the ietf-interface.  It allows the user
   to set the operating mode of CMIS for control pluggable devices as
   well as other operational parameters.

4.1.  ietf-cmis-control

   The structure of ietf-cmis-control is shown below:

   module: ietf-cmis-control

     augment /if:interfaces/if:interface:
       +--rw cmis-control
          +--rw default-policy?              enumeration
          +--rw remote-read-allowed-pages* [page-num]
          |  +--rw page-num                  uint8
          +--rw remote-write-allowed-pages* [page-num]
          |  +--rw page-num                  uint8
          +--ro cmis-enabled?                boolean
          +--ro cmis-version?                string
          +--rw cmis-page* [page-num]
             +--rw page-num            uint8
             +--rw bank                uint8
             +--ro page-access-type?   access-type
             +--rw description?        string
             +--rw value* [offset]
                +--rw offset               uint8
                +--rw size                 uint8
                +--ro value-access-type?   access-type
                +--rw value-data           binary
                +--rw description?         string

      Note that the values related to CMIS pages are defined in
      [OIF-CMIS].

   The YANG module of "ietf-cmis-control" is defined as below.

   <CODE BEGINS> file "ietf-cmis-control@2026-05-12.yang"
   module ietf-cmis-control {
     yang-version 1.1;
     namespace "urn:ietf:params:xml:ns:yang:ietf-cmis-control";
     prefix cmis-ctrl;

     import ietf-interfaces {
       prefix if;
     }

     organization
       "IETF CCAMP Working Group";



Homma, et al.           Expires 13 November 2026               [Page 10]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


     contact
       "WG Web:   <http://tools.ietf.org/wg/ccamp/>
       WG List:  <mailto:ccamp@ietf.org>

       Editor:   Shunsuke Homma
         <mailto:shunsuke.homma.ietf@gmail.com>

       Editor:   Hitoshi Irino
         <mailto:hitoshi.irino.ntt@gmail.com>";

     description
       "This YANG module defines a data model for the management
       of CMIS (Common Management Interface Specification) pages
       as specified by OIF. It enables configuration and retrieval
       of CMIS page data, including access types and value fields,
       to support the management of pluggable optical modules via
       NETCONF or RESTCONF.

       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.

       Copyright (c) 2026 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
       (http://trustee.ietf.org/license-info).

       This version of this YANG module is part of RFC XXXX
       (https://www.rfc-editor.org/info/rfcXXXX); see the RFC itself
       for full legal notices.";

   // RFC Ed.: replace XXXX with actual RFC number and remove this note

     revision "2026-05-12" {
       description
         "Revised control model to use whitelist approach.
          Added remote-read-allowed-pages for granular access control.";
       reference
         "RFC XXXX: A YANG Data Model for CMIS Access and Control";
     }




Homma, et al.           Expires 13 November 2026               [Page 11]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


     revision "2025-04-21" {
       description
         "Initial revision.";
       reference
         "I-D.hi-ccamp-cmis-control-yang-00";
     }

     /*
      * CMIS control data nodes
      */

     typedef access-type {
         type enumeration {
           enum rw {
             description "A readable and writable element.";
           }
           enum rww {
             description "A readable and writable element that can be
             modified by the module.";
           }
           enum ro {
             description "A read-only element.";
           }
           enum wo {
             description "A write-only element.";
           }
           enum wo/sc {
             description "A write-only element with self-clearing side
             effect.";
           }
           enum ro/cor {
             description "A write-only element with celan-on-read side
             effect.";
           }
         }
         description
           "Defines access types for CMIS elements as defined in OIF-CMIS.";
     }

     grouping cmis-page {
       description
         "Parameters stored in the CMIS page";

       leaf page-num{
         type uint8 {
           range "0 .. 255";
         }
         mandatory true;



Homma, et al.           Expires 13 November 2026               [Page 12]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


         description
           "The number of the CMIS page.";
       }

       leaf bank {
         type uint8;
         mandatory true;
         description
           "The banks corresponding to the CMIS page.";
       }

       leaf page-access-type {
         type access-type;
         config false;
         description "Access type of the CMIS page.";
       }

       leaf description {
         type string;
         description
           "The description of the CMIS page.";
       }

       list value {
         key "offset";
         description
         "The value contained in the CMIS page.";

         leaf offset {
           type uint8;
           mandatory true;
           description
             "The memory address of the value.";
         }

         leaf size {
           type uint8 {
             range "1 .. 128";
           }
           mandatory true;
           description
             "The memory size of the value.";
         }

         leaf value-access-type {
           type access-type;
           config false;
           description "Access type of the target value.";



Homma, et al.           Expires 13 November 2026               [Page 13]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


         }

         leaf value-data {
           type binary;
           mandatory true;
           description
             "The data contained in the value. It is writable only
             when the access-type is not Read-Only or Read-Only with
             clean-on-read side effect.";
         }

         leaf description {
           type string;
           description
             "The description of the value.";
         }
       }
     }


     grouping cmis-pages {
       description
         "The list of the accessible CMIS pages supported by the
         pluggable device accommodated into the interface.";

       list cmis-page {
         key "page-num";
         description "A CMIS page supported by the device.";
         uses cmis-page;
         }
     }

     grouping cmis-control {
       description
         "Parameters for CMIS control and governance.";

       leaf cmis-enabled {
         type boolean;
         default "false";
         config false;
         description
           "The availability of the CMIS for control the pluggable
           device equipped in the interface. If the device does not
           support CMIS, this value is false.";
       }

       leaf cmis-version {
         type string;



Homma, et al.           Expires 13 November 2026               [Page 14]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


         config false;
         description
           "The version of the CMIS by the pluggable device.";
       }

       leaf default-policy {
         type enumeration {
           enum disabled {
             description
               "Remote access is completely disabled for pages not
                listed in the whitelists.";
           }
           enum read-only {
             description
               "Remote access is restricted to monitoring only for pages
                not listed in 'remote-write-allowed-pages'.";
           }
         }
         default "read-only";
         description
           "Defines the default access policy for CMIS pages.";
       }

       list remote-read-allowed-pages {
         key "page-num";
         description
           "A whitelist of pages that are allowed to be READ by
            a remote controller, even if the default-policy is 'disabled'.
            This list is useful when 'default-policy' is set to 'disabled'
            but specific pages need to be monitored.

            Note: Lower Memory (Address 0-127) SHOULD NOT be included in
            this list if it contains Clear-on-Read (CoR) registers that
            are managed by the Host NOS.";

         leaf page-num {
           type uint8;
           description "The CMIS page number allowed for remote read.";
         }
       }

       list remote-write-allowed-pages {
         key "page-num";
         description
           "A whitelist of pages that are allowed to be modified by
            a remote controller (Read/Write).
            If a page is listed in both this list and
            'remote-read-allowed-pages', this list takes precedence,



Homma, et al.           Expires 13 November 2026               [Page 15]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


            granting Read/Write access.

            Note: Lower Memory (Address 0-127) MUST NOT be included in
            this list as it contains critical Host management flags.

            When a page is removed from this list, or when the default-policy
            changes to 'disabled' (and the page is not in the read-whitelist),
            the Host NOS MUST strictly enforce its local configuration
            (running-config) to the target CMIS pages.
            Values modified by a remote controller MUST be overwritten by
            the Host's local configuration or reset to default values to
            maintain configuration consistency.";

         leaf page-num {
           type uint8;
           description "The CMIS page number allowed for remote write.";
         }
       }

       uses cmis-pages;

     }

     /*
      * Augment Interface
      */

     augment "/if:interfaces/if:interface" {
       description "Augments interface with CMIS control parameters.";
       container cmis-control {
         description "Container for CMIS control.";
         uses cmis-control;
       }
     }
   }
   <CODE ENDS>

4.2.  ietf-cmis-control-primitive

   This document provides a more primitive YANG data model for CMIS
   access and control.  This is called as "ietf-cmis-control-primitive"
   or "primitive mode" and it doesn't manage supplemental information,
   such as access-types or description, of the fields in a CMIS page,
   and treat accessed memories as flat data structure.

   This model enables implementation of server (i.e., network node) side
   to be simple, but on the other hand, client (i.e., controller) side
   is needed strict management of data of CMIS pages.  For example, when



Homma, et al.           Expires 13 November 2026               [Page 16]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


   a client sends a request to change any value, it needs to comprehend
   the page number, the offset, and the data size in which the data is
   contained.

   The tree diagram of "ietf-cmis-control-primitive" is shown below:

   module: ietf-cmis-control-primitive

     augment /if:interfaces/if:interface:
       +--rw cmis-control-primitive
          +--ro cmis-enabled?          boolean
          +--ro cmis-version?          string
          +--rw primitive-cmis-page* [page-num]
             +--rw page-num    uint8
             +--rw bank        uint8
             +--rw offset      uint8
             +--rw size        uint8
             +--rw value       binary

   The "ietf-cmis-control-primitive" module is defined as below.

   <CODE BEGINS> file "ietf-cmis-control-primitive@2025-04-21.yang"
   module ietf-cmis-control-primitive {
     yang-version 1.1;
     namespace "urn:ietf:params:xml:ns:yang:ietf-cmis-control-primitive";
     prefix cmis-ctrl-pm;

     import ietf-interfaces {
       prefix if;
     }

     organization
       "IETF CCAMP Working Group";

     contact
       "WG Web:   <http://tools.ietf.org/wg/ccamp/>
       WG List:  <mailto:ccamp@ietf.org>

       Editor:   Shunsuke Homma
         <mailto:shunsuke.homma.ietf@gmail.com>

       Editor:   Hitoshi Irino
         <mailto:hitoshi.irino.ntt@gmail.com>";

     description
       "This YANG module defines a data model for the management
       of CMIS (Common Management Interface Specification) pages
       as specified by OIF with RPC. It enables configuration and



Homma, et al.           Expires 13 November 2026               [Page 17]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


       retrieval of CMIS page data, including access types and
       value fields, to support the management of pluggable optical
       modules via NETCONF or RESTCONF.

       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.

       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
       (http://trustee.ietf.org/license-info).

       This version of this YANG module is part of RFC XXXX
       (https://www.rfc-editor.org/info/rfcXXXX); see the RFC itself
       for full legal notices.";

   // RFC Ed.: replace XXXX with actual RFC number and remove this note

       revision "2025-04-21" {
         description
           "Initial revision.";
         reference
           "RFC XXXX: A YANG Data Model for CMIS Access and Control";
       }

       augment "/if:interfaces/if:interface" {
         description "Add primitive CMIS read/write actions under interface.";

         action cmis-read {
           description "Read CMIS register under this interface.";
           input {
             leaf page {
               type uint8;
               mandatory true;
               description "The number of the CMIS page.";
             }
             leaf bank {
               type uint8;
               mandatory true;
               description "The bank of the CMIS page.";



Homma, et al.           Expires 13 November 2026               [Page 18]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


             }
             leaf offset {
               type uint8;
               mandatory true;
               description "The memory address of the value.";
             }
             leaf size {
               type uint8;
               default 1;
               description "The memory size of the value.";
             }
           }
           output {
             leaf data {
               type binary;
               description "Raw register data.";
             }
           }
         }

         action cmis-write {
           description "Write CMIS register under this interface.";
           input {
             leaf page {
               type uint8;
               mandatory true;
               description "The number of the CMIS page.";
             }
             leaf bank {
               type uint8;
               mandatory true;
               description "The bank of the CMIS page.";
             }
             leaf offset {
               type uint8;
               mandatory true;
               description "The memory address of the value.";
             }
             leaf data {
               type binary;
               mandatory true;
               description "Data to write.";
             }
           }
         }
       }
   }
   <CODE ENDS>



Homma, et al.           Expires 13 November 2026               [Page 19]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


4.3.  ietf-cmis-control-action

   The "ietf-cmis-control-action" module defines actions-based controls
   of CMIS pages with NETCONF RPC.

   module: ietf-cmis-control-action

     augment /if:interfaces/if:interface:
       +---x cmis-read
       |  +---w input
       |  |  +---w page      uint8
       |  |  +---w bank      uint8
       |  |  +---w offset    uint8
       |  |  +---w size      uint8
       |  +--rw output
       |     +--rw data?   binary
       +---x cmis-write
          +---w input
          |  +---w page      uint8
          |  +---w bank      uint8
          |  +---w offset    uint8
          |  +---w data      binary
          +--rw output
             +--rw status?             enumeration
             +--rw post-write-value?   binary

   The YANG module of "ietf-cmis-control-action" is defined as below.

   <CODE BEGINS> file "ietf-cmis-control-action@2026-05-12.yang"
   module ietf-cmis-control-action {
     yang-version 1.1;
     namespace "urn:ietf:params:xml:ns:yang:ietf-cmis-control-action";
     prefix cmis-ctrl-act;

     import ietf-interfaces {
       prefix if;
     }

     organization
       "IETF CCAMP Working Group";

     contact
       "WG Web:   <http://tools.ietf.org/wg/ccamp/>
       WG List:  <mailto:ccamp@ietf.org>

       Editor:   Shunsuke Homma
         <mailto:shunsuke.homma.ietf@gmail.com>




Homma, et al.           Expires 13 November 2026               [Page 20]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


       Editor:   Hitoshi Irino
         <mailto:hitoshi.irino.ntt@gmail.com>";

     description
       "This YANG module defines a data model for action-based
       management of CMIS (Common Management Interface Specification)
       pages as specified by OIF. It enables configuration and
       retrieval of CMIS page data, including access types and value
       fields, to support the management of pluggable optical modules
       via NETCONF or RESTCONF.

       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.

       Copyright (c) 2026 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
       (http://trustee.ietf.org/license-info).

       This version of this YANG module is part of RFC XXXX
       (https://www.rfc-editor.org/info/rfcXXXX); see the RFC itself
       for full legal notices.";

   // RFC Ed.: replace XXXX with actual RFC number and remove this note
     revision "2026-05-12" {
       description
         "Updated action definitions to respect governance policy
          defined in ietf-cmis-control.";
       reference
         "RFC XXXX: A YANG Data Model for CMIS Access and Control";
     }

     revision "2025-10-11" {
       description "Initial revision.";
       reference
         "RFC XXXX: A YANG Data Model for CMIS Access and Control";
     }

     augment "/if:interfaces/if:interface" {
       description



Homma, et al.           Expires 13 November 2026               [Page 21]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


         "Add CMIS read/write actions under interface.";

       action cmis-read {
         description
           "Read CMIS register via action context.
            The operation MUST respect the governance policy defined
            in the 'cmis-control' container of the target interface.
            If the target page is not accessible (e.g., default-policy
            is 'disabled' and the page is not in the read/write
            whitelists), the server MUST return an error.
            Note: Care should be taken when accessing Lower Memory
            (Address 0-127, typically Page 00h) as it may contain
            Clear-on-Read registers.";
         input {
           leaf page {
             type uint8;
             mandatory true;
             description "The number of the CMIS page.";
           }
           leaf bank {
             type uint8;
             mandatory true;
             description "The banks corresponding to the CMIS page.";
           }
           leaf offset {
             type uint8;
             mandatory true;
             description "The memory address of the value.";
           }
           leaf size {
             type uint8{
               range "1 .. 128";
             }
             mandatory true;
             description "The memory size of the value.";
           }
         }
         output {
           leaf data {
             type binary;
             description "Raw register data.";
           }
         }
       }

       action cmis-write {
         description
           "Write CMIS register data via action context.



Homma, et al.           Expires 13 November 2026               [Page 22]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


            The operation MUST respect the governance policy defined
            in the 'cmis-control' container of the target interface.
            If the target page is not in the 'remote-write-allowed-pages'
            list, the server MUST reject the request.
            Writing to Lower Memory (Address 0-127) MUST NOT be performed
            to prevent interference with Host management.";
         input {
           leaf page {
             type uint8;
             mandatory true;
             description "The number of the CMIS page.";
           }
           leaf bank {
             type uint8;
             mandatory true;
             description "The banks corresponding to the CMIS page.";
           }
           leaf offset {
             type uint8;
             mandatory true;
             description "The memory address of the value.";
           }
           leaf data {
             type binary;
             mandatory true;
             description "Data to write.";
           }
         }
         output {
           leaf status {
             type enumeration {
               enum success {
                 description "Write operation succeeded.";
               }
               enum not-permitted {
                 description
                   "Write request was rejected due to access-type or
                    governance policy (e.g., page not in whitelist).";
               }
               enum io-error {
                 description "I/O error during write";
               }
               enum invalid-params {
                 description "Bad parameters";
               }
             }
             description "Result of the write operation.";
           }



Homma, et al.           Expires 13 November 2026               [Page 23]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


           leaf post-write-value {
             type binary;
             description
               "Optional read-back of the target value after write.
                Present only if the implementation performed a read-back
                (e.g., for 'rw' registers). Not present for 'wo' registers
                or when no-readback was requested/possible.";
           }
         }
       }
     }
   }
   <CODE ENDS>

4.4.  ietf-cmis-control-rpc

   The "ietf-cmis-control-rpc" module provides a schema to control CMIS
   pages with NETCONF RPC.

   The tree diagram of "ietf-cmis-control-rpc" is shown below.

   module: ietf-cmis-control-rpc

     rpcs:
       +---x cmis-read
       |  +---w input
       |  |  +---w interface-name    -> /if:interfaces/interface/name
       |  |  +---w page              uint8
       |  |  +---w bank              uint8
       |  |  +---w offset            uint8
       |  |  +---w size?             uint8
       |  +--ro output
       |     +--ro data?   binary
       +---x cmis-write
          +---w input
          |  +---w interface-name    -> /if:interfaces/interface/name
          |  +---w page              uint8
          |  +---w bank              uint8
          |  +---w offset            uint8
          |  +---w data              binary
          +--ro output
             +--ro status?             enumeration
             +--ro post-write-value?   binary

   The YANG module of "ietf-cmis-control-rpc" is defined as below.






Homma, et al.           Expires 13 November 2026               [Page 24]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


   <CODE BEGINS> file "ietf-cmis-control-rpc@2026-05-12.yang"
   module ietf-cmis-control-rpc {
     yang-version 1.1;
     namespace "urn:ietf:params:xml:ns:yang:ietf-cmis-control-rpc";
     prefix cmis-ctrl-rpc;

     import ietf-interfaces {
       prefix if;
     }

     organization
       "IETF CCAMP Working Group";

     contact
       "WG Web:   <http://tools.ietf.org/wg/ccamp/>
       WG List:  <mailto:ccamp@ietf.org>

       Editor:   Shunsuke Homma
         <mailto:shunsuke.homma.ietf@gmail.com>

       Editor:   Hitoshi Irino
         <mailto:hitoshi.irino.ntt@gmail.com>";

     description
       "This YANG module defines a data model for the management
       of CMIS (Common Management Interface Specification) pages
       as specified by OIF with RPC. It enables configuration and
       retrieval of CMIS page data, including access types and
       value fields, to support the management of pluggable
       optical modules via NETCONF or RESTCONF.

       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.

       Copyright (c) 2026 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
       (http://trustee.ietf.org/license-info).

       This version of this YANG module is part of RFC XXXX



Homma, et al.           Expires 13 November 2026               [Page 25]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


       (https://www.rfc-editor.org/info/rfcXXXX); see the RFC itself
       for full legal notices.";

   // RFC Ed.: replace XXXX with actual RFC number and remove this note

     revision "2026-05-12" {
       description
         "Updated RPC definitions to respect governance policy
          defined in ietf-cmis-control.";
       reference
         "RFC XXXX: A YANG Data Model for CMIS Access and Control";
     }

     revision "2025-10-11" {
       description
         "Initial revision.";
       reference
         "I-D.hi-ccamp-cmis-control-yang-01";
     }

     rpc cmis-read {
       description
         "Read a CMIS register from a pluggable DCO transceiver.
          The operation MUST respect the governance policy defined
          in the 'cmis-control' container of the target interface.
          Note: Care should be taken when accessing Lower Memory
          (Address 0-127, typically Page 00h) as it may contain
          Clear-on-Read registers.";
       input {
         leaf interface-name {
           type leafref{
             path "/if:interfaces/if:interface/if:name";
           }
           mandatory true;
           description "Target interface name.";
         }
         leaf page {
           type uint8;
           mandatory true;
           description "The number of the CMIS page.";
         }
         leaf bank {
           type uint8;
           mandatory true;
           description "The bank of the CMIS page.";
         }
         leaf offset {
           type uint8;



Homma, et al.           Expires 13 November 2026               [Page 26]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


           mandatory true;
           description "The memory address of the value.";
         }
         leaf size {
           type uint8;
           default 1;
           description "Number of bytes to read.";
         }
       }
       output {
         leaf data {
           type binary;
           description "Raw register data.";
         }
       }
     }

     rpc cmis-write {
       description
         "Write CMIS register data to a pluggable module.
          The operation MUST respect the governance policy defined
          in the 'cmis-control' container of the target interface.
          If the target page is not in the 'remote-write-allowed-pages'
          list, the server MUST reject the request.
          Writing to Lower Memory (Address 0-127) MUST NOT be performed
          to prevent interference with Host management.";
       input {
         leaf interface-name {
           type leafref{
             path "/if:interfaces/if:interface/if:name";
           }
           mandatory true;
           description "Target interface name.";
         }
         leaf page {
           type uint8;
           mandatory true;
           description "The number of the CMIS page.";
         }
         leaf bank {
           type uint8;
           mandatory true;
           description "The banks corresponding to the CMIS page.";
         }
         leaf offset {
           type uint8;
           mandatory true;
           description "The memory address of the value.";



Homma, et al.           Expires 13 November 2026               [Page 27]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


         }
         leaf data {
           type binary;
           mandatory true;
           description "Data to write.";
         }
       }
       output {
         leaf status {
           type enumeration {
             enum success {
               description "Write operation succeeded.";
             }
             enum not-permitted {
               description
                 "Write request was rejected due to access-type or
                  governance policy (e.g., page not in whitelist).";
             }
             enum io-error {
               description "I/O error during write.";
             }
             enum invalid-params {
               description "Bad parameters provided.";
             }
           }
           description "Result of the write operation.";
         }

         leaf post-write-value {
           type binary;
           description
             "Optional read-back of the target value after write.
              Present only if the implementation performed a read-back
              (e.g., for 'rw' registers). Not present for 'wo' registers
              or when no-readback was requested/possible.";
         }
       }
     }
   }
   <CODE ENDS>

4.5.  ietf-cmis-monitor

   The "ietf-cmis-monitor" module provides monitoring capabilities for
   CMIS-based optical modules.

   The tree diagram of "ietf-cmis-monitor" is shown below.




Homma, et al.           Expires 13 November 2026               [Page 28]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


   module: ietf-cmis-monitor
     +--rw monitors
        +--rw monitor-rule* [id]
           +--rw id                string
           +--rw interface-name    -> /if:interfaces/interface/name
           +--rw monitor-target
           |  +--rw page      uint8
           |  +--rw bank      uint8
           |  +--rw offset    uint8
           |  +--rw size?     uint8
           +--rw condition
           |  +--rw condition-type    enumeration
           |  +--rw threshold?        decimal64
           |  +--rw delta-rate?       decimal64
           +--rw interval-ms?      uint32
           +--rw enabled?          boolean

     notifications:
       +---n cmis-monitor-event
          +--ro interface-name?   string
          +--ro rule-id?          string
          +--ro monitor-target
          |  +--ro page      uint8
          |  +--ro bank      uint8
          |  +--ro offset    uint8
          |  +--ro size?     uint8
          +--ro condition-type?   enumeration
          +--ro current-value?    binary
          +--ro threshold?        decimal64
          +--ro delta-rate?       decimal64
          +--ro timestamp?        yang:date-and-time

   The YANG module of "ietf-cmis-monitor" is defined as below.

   <CODE BEGINS> file "ietf-cmis-monitor@2025-10-11.yang"
   module ietf-cmis-monitor {
     yang-version 1.1;
     namespace "urn:ietf:params:xml:ns:yang:ietf-cmis-monitor";
     prefix cmis-mon;

     import ietf-interfaces {
       prefix if;
     }
     import ietf-yang-types {
       prefix yang;
     }

     organization



Homma, et al.           Expires 13 November 2026               [Page 29]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


       "IETF CCAMP Working Group";

     contact
       "WG Web:   <https://datatracker.ietf.org/wg/ccamp/>
        WG List:  <mailto:ccamp@ietf.org>

       Editor:   Shunsuke Homma
         <mailto:shunsuke.homma.ietf@gmail.com>

       Editor:   Hitoshi Irino
         <mailto:hitoshi.irino.ntt@gmail.com>";

     description
       "This module provides monitoring capabilities for CMIS-based
        optical modules. Users can define monitor rules for CMIS
        registers identified by page/bank/offset/size. Notifications
        are generated when threshold or delta-rate conditions are met.

       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.

       Copyright (c) 2026 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
       (http://trustee.ietf.org/license-info).

       This version of this YANG module is part of RFC XXXX
       (https://www.rfc-editor.org/info/rfcXXXX); see the RFC itself
       for full legal notices.";

     revision "2025-10-11" {
       description "Initial revision.";
       reference
         "RFC XXXX: A YANG Data Model for CMIS Access and Control";
     }

     grouping monitor-target {
       description
         "Target CMIS register to monitor.";
       leaf page {



Homma, et al.           Expires 13 November 2026               [Page 30]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


         type uint8;
         mandatory true;
         description "The number of the CMIS page.";
       }
       leaf bank {
         type uint8;
         mandatory true;
         description "The bank of the CMIS page.";
       }
       leaf offset {
         type uint8;
         mandatory true;
         description "The memory address of the value.";
       }
       leaf size {
         type uint8 {
           range "1 .. 128";
         }
         description "The memory size of the monitored value.";
       }
     }

     container monitors {
       description "Container for all monitor rules.";

       list monitor-rule {
         key "id";
         description "Monitoring rule.";

         leaf id {
           type string;
           description "Unique identifier of the rule.";
         }

         leaf interface-name {
           type leafref {
             path "/if:interfaces/if:interface/if:name";
           }
           mandatory true;
           description "Target interface of the monitored CMIS module.";
         }

         container monitor-target {
           description "Target CMIS register details.";
           uses monitor-target;
         }

         container condition {



Homma, et al.           Expires 13 November 2026               [Page 31]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


           description "Condition to trigger notification.";
           leaf condition-type {
             type enumeration {
               enum threshold {
                 description "Condition based on crossing a threshold.";
               }
               enum delta-rate {
                 description "Condition based on a rate of change.";
               }
             }
             mandatory true;
             description "Type of condition.";
           }
           leaf threshold {
             type decimal64 {
               fraction-digits 2;
             }
             description "Threshold value for triggering notification (only used for threshold type).";
           }
           leaf delta-rate {
             type decimal64 {
               fraction-digits 2;
             }
             description "Maximum allowed change per interval (only used for delta-rate type).";
           }
         }

         leaf interval-ms {
           type uint32;
           default 1000;
           description "Monitoring interval in milliseconds.";
         }

         leaf enabled {
           type boolean;
           default true;
           description "Enable or disable this monitor rule.";
         }
       }
     }

     notification cmis-monitor-event {
       description "Notification raised when monitor rule condition is met.";

       leaf interface-name {
         type string;
         description "Interface name of the monitored module.";
       }



Homma, et al.           Expires 13 November 2026               [Page 32]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


       leaf rule-id {
         type string;
         description "ID of the rule that triggered this notification.";
       }

       container monitor-target {
         description "Target CMIS register that triggered the event.";
         uses monitor-target;
       }

       leaf condition-type {
         type enumeration {
           enum threshold {
             description "Triggered by crossing a threshold.";
           }
           enum delta-rate {
             description "Triggered by a rate of change.";
           }
         }
         description "The type of condition that was met.";
       }

       leaf current-value {
         type binary;
         description "Current value of the monitored register.";
       }

       leaf threshold {
         type decimal64 {
           fraction-digits 2;
         }
         description "Threshold value (present if threshold type).";
       }

       leaf delta-rate {
         type decimal64 {
           fraction-digits 2;
         }
         description "Delta-rate value (present if delta-rate type).";
       }

       leaf timestamp {
         type yang:date-and-time;
         description "Time when the notification was generated.";
       }
     }
   }
   <CODE ENDS>



Homma, et al.           Expires 13 November 2026               [Page 33]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


5.  Security Considerations

   This YANG allows remote systems to control the equipped pluggable
   devices directly.  It might cause conflict of management of the
   pluggable devices among the platform node and remote systems.

   To avoid such conflicts, a whitelist-based control mechanism is
   introduced.

   *  **default-policy**: Determines the access level for pages NOT
      explicitly listed in the whitelist.  The default is 'read-only'.
      Setting this to 'disabled' blocks all remote access unless
      whitelisted.

   *  **remote-read-allowed-pages**: A whitelist that explicitly permits
      remote read access to specific CMIS pages, even when default-
      policy is disabled.

   *  **remote-write-allowed-pages**: A whitelist that explicitly
      permits remote write access to specific CMIS pages.  Pages listed
      here are under Remote control.  If a page appears in both lists,
      Write access takes precedence.

   The operator must ensure that the pages delegated to the Remote
   system (via the whitelist) do not overlap with pages required for the
   Host NOS's basic link establishment operations.

   Regarding to use of the primitive mode, the control rights of the
   accessible pages are delegated to a controller.  Therefore, it is
   recommended that the mode is used in case that the controller can be
   trusted, for example, the controlled device and controller are
   managed by the same operator.  Otherwise, specific pages which may
   affect data plane signaling SHOULD NOT be exposed by using access
   control features such as [RFC8341]

6.  IANA Considerations

   This document requests IANA to register the following YANG modules in
   the "YANG Module Names" registry [RFC6020] within the "YANG
   Parameters" registry group.











Homma, et al.           Expires 13 November 2026               [Page 34]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


     Name:  ietf-cmis-control
     Maintained by IANA?  N
     Namespace:  urn:ietf:params:xml:ns:yang:ietf-cmis-control
     Prefix:  cmis-ctrl
     Reference:  RFC XXXX

     Name:  ietf-cmis-control-primitive
     Maintained by IANA?  N
     Namespace:  urn:ietf:params:xml:ns:yang:ietf-cmis-control-primitive
     Prefix:  cmis-ctrl-pm
     Reference:  RFC XXXX

     Name:  ietf-cmis-control-action
     Maintained by IANA?  N
     Namespace:  urn:ietf:params:xml:ns:yang:ietf-cmis-control-action
     Prefix:  cmis-ctrl-act
     Reference:  RFC XXXX

     Name:  ietf-cmis-control-rpc
     Maintained by IANA?  N
     Namespace:  urn:ietf:params:xml:ns:yang:ietf-cmis-control-rpc
     Prefix:  cmis-ctrl-rpc
     Reference:  RFC XXXX

     Name:  ietf-cmis-monitor
     Maintained by IANA?  N
     Namespace:  urn:ietf:params:xml:ns:yang:ietf-cmis-monitor
     Prefix:  cmis-mon
     Reference:  RFC XXXX

      RFC Editor Note: Please replace XXXX with the RFC number assigned
      to this document and remove this note.

7.  References

7.1.  Normative References

   [OIF-CMIS] OIF, "Common Management Interface Specification (CMIS)
              Revision 5.3", September 2024.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <https://www.rfc-editor.org/info/rfc2119>.

   [RFC7223]  Bjorklund, M., "A YANG Data Model for Interface
              Management", RFC 7223, DOI 10.17487/RFC7223, May 2014,
              <https://www.rfc-editor.org/info/rfc7223>.



Homma, et al.           Expires 13 November 2026               [Page 35]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


   [RFC7950]  Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language",
              RFC 7950, DOI 10.17487/RFC7950, August 2016,
              <https://www.rfc-editor.org/info/rfc7950>.

   [RFC8340]  Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams",
              BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018,
              <https://www.rfc-editor.org/info/rfc8340>.

7.2.  Informative References

   [ECOC48923.2020.9333176]
              Cantono, M., Kamalov, V., Salsi, M., Newland, M., and Z.
              Zhan, "Sub-Hertz Spectral Analysis of Polarization of
              Light in a Transcontinental Submarine Cable", European
              Conference on Optical Communications ECOC 2020,
              DOI 10.1109/ECOC48923.2020.9333176, December 2020,
              <https://doi.org/10.1109/ECOC48923.2020.9333176>.

   [JLT.2021.3139167]
              Sasai, T., Nakamura, M., Yamazaki, E., Yamamoto, S.,
              Nishizawa, H., and Y. Kisaka, "Digital Longitudinal
              Monitoring of Optical Fiber Communication Link", Journal
              of Lightwave Technology volume:40,
              DOI 10.1109/JLT.2021.313917, April 2022,
              <https://doi.org/10.1109/JLT.2021.313917>.

   [JOCN.505729]
              Nishizawa, H., Mano, T., Ferreira de Lima, T., Huang, Y.,
              Wang, Z., Ishida, W., Kawashima, M., Ip, E., D'Amico, A.,
              Okamoto, S., Inoue, T., Anazawa, K., Curri, V., Zussman,
              G., Kilper, D., Chen, T., Wang, T., Asahi, K., and K.
              Takasugi, "Fast WDM provisioning with minimal probing: the
              first field experiments for DC exchanges", JOCN 505729,
              DOI 10.1364/JOCN.505729, February 2024,
              <https://doi.org/10.1364/JOCN.505729>.

   [RFC6241]  Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed.,
              and A. Bierman, Ed., "Network Configuration Protocol
              (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011,
              <https://www.rfc-editor.org/info/rfc6241>.

   [RFC8040]  Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF
              Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017,
              <https://www.rfc-editor.org/info/rfc8040>.







Homma, et al.           Expires 13 November 2026               [Page 36]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


   [RFC8341]  Bierman, A. and M. Bjorklund, "Network Configuration
              Access Control Model", STD 91, RFC 8341,
              DOI 10.17487/RFC8341, March 2018,
              <https://www.rfc-editor.org/info/rfc8341>.

Appendix A.  Contributors

   The following individuals contributed to the development and review
   of this document:

   Kazuya Anazawa (NTT)

   Email: kazuya.anazawa@ntt.com

Appendix B.  Implementation Patterns

   This document introduces two patterns to implement a client using an
   interface in which this YANG data model is available:

   Pattern1:  Controller/NMS on Remote Host

      In this pattern, a controller or an NMS implements a client using
      this YANG data model, and controls pluggable modules installed to
      a platform device.  The overview is shown in Figure 2.

   Pattern2:  Application Running on the Platform Device

      In this pattern, a 3rd party's application running on a platform
      device implements a client using this YANG data model, and
      controls pluggable modules installed to the device.  That
      application can behave as a server using this YANG data model, or
      provide more generic interfaces, such as REST APIs to remote
      systems.  The overview is shown in Figure 3.


















Homma, et al.           Expires 13 November 2026               [Page 37]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


                   +-----------------------+
                   |    Controller/NMS     |
                   +-----------------------+
                               A
                               | This YANG over NETCONF,
                               | RESTCONF or RPC.
                               |
                               V
                   +-----------------------+
                   |   Platform Device     |
                   |   ,---------------.   |
                   |  |       NOS       |  |
                   |   `---------------'   |
                   |           A           |
                   |           | CMIS via  |
                   |           V i2c bus   |
                   |       +-------+       |
                   +-------|  DCO  |-------+
                           +-------+

                 Figure 2: Implementation Pattern1 Overview

              +-----------------------+
              |    Controller/NMS     |
              +-----------------------+
                          A
                          | Generic/abstracted Data Model
                          | over NETCONF/RESTCONF or REST API
                          +------+
              +------------------|----+
              | Platform Device  |    |
              |                  V    |
              | This YANG over ,---.  |
              | NETCONF etc.  | TPA | |
              |       +-----> | APL | |
              |       |        `---'  |
              |   ,---V-----------.   |
              |  |       NOS       |  |
              |   `---------------'   |
              |           A           |
              |           | CMIS via  |
              |           V i2c bus   |
              |       +-------+       |
              +-------|  DCO  |-------+
                      +-------+

                 Figure 3: Implementation Pattern2 Overview




Homma, et al.           Expires 13 November 2026               [Page 38]

Internet-Draft          YANG-CMIS-Access-Control                May 2026


Authors' Addresses

   Shunsuke Homma (editor)
   NTT
   Email: shunsuke.homma.ietf@gmail.com


   Hitoshi Irino (editor)
   NTT West
   Email: hitoshi.irino.ge@west.ntt.co.jp


   Toru Mano
   NTT
   Email: toru.mano@ntt.com


   Yuji Tochio
   1Finity
   Email: tochio@fujitsu.com


   Reza Rokui
   Ciena
   Email: rrokui@ciena.com


























Homma, et al.           Expires 13 November 2026               [Page 39]
