Skip to main content

YANG Modules describing Capabilities for Systems and Datastore Update Notifications
draft-ietf-netconf-notification-capabilities-14

The information below is for an old version of the document.
Document Type
This is an older version of an Internet-Draft that was ultimately published as RFC 9196.
Authors Balázs Lengyel , Alexander Clemm , Benoît Claise
Last updated 2021-02-22
Replaces draft-lengyel-netconf-notification-capabilities
RFC stream Internet Engineering Task Force (IETF)
Formats
Reviews
Additional resources Mailing list discussion
Stream WG state Waiting for WG Chair Go-Ahead
Revised I-D Needed - Issue raised by WG, Awaiting Expert Review/Resolution of Issues Raised, Doc Shepherd Follow-up Underway
Document shepherd Kent Watsen
IESG IESG state Became RFC 9196 (Proposed Standard)
Consensus boilerplate Yes
Telechat date (None)
Responsible AD (None)
Send notices to Kent Watsen <kent+ietf@watsen.net>
draft-ietf-netconf-notification-capabilities-14
gt;
        </per-node-capabilities>
      </datastore-capabilities>
    </system-capabilities>
  </content-data>
</instance-data-set>

   Figure 1: Notification Capabilities with data node specific settings

Appendix B.  Instance data example #2

   The following examples use artwork folding [RFC8792] for better
   formatting.

   The following instance data example describes the notification
   capabilities of a hypothetical "acme-switch".  The switch implements
   the running, candidate and operational datastores.  Every change can
   be reported "on-change" from the running datastore, nothing from the
   candidate datastore and all "config false" data from the operational
   datastore.  "periodic" subscriptions are supported for running and
   operational, but not for candidate datastores.

Lengyel, et al.          Expires August 26, 2021               [Page 22]
Internet-Draft    System and  Notification Capabilities    February 2021

========== NOTE: '\' line wrapping per BCP YYY (RFC YYYY) ===========

<?xml version="1.0" encoding="UTF-8"?>
<instance-data-set xmlns=\
    "urn:ietf:params:xml:ns:yang:ietf-yang-instance-data">
  <name>acme-switch-notification-capabilities</name>
  <content-schema>
    <module>ietf-system-capabilities@2020-03-23</module>
    <module>ietf-notification-capabilities@2020-03-23</module>
  </content-schema>
  <description>Notification capabilities of acme-switch.
    Acme-switch implements the running, candidate and operational
    datastores. Every change can be reported on-change from the
    running datastore, nothing from the candidate datastore and
    all "config false" data from the operational datastore. Periodic
    subscriptions are supported for running and operational, but not
    for candidate datastore.
  </description>
  <content-data>
    <system-capabilities \
     xmlns="urn:ietf:params:xml:ns:yang:ietf-system-capabilities" \
     xmlns:notc=\
       "urn:ietf:params:xml:ns:yang:ietf-notification-capabilities" \
     xmlns:ds="urn:ietf:params:xml:ns:yang:ietf-datastores">
     <notc:subscription-capabilities>
      <notc:minimum-update-period>500</notc:minimum-update-period>
      <notc:max-nodes-per-update>2000</notc:max-nodes-per-update>
      <notc:minimum-dampening-period>100</notc:minimum-dampening-period>
      <notc:periodic-notifications-supported>\
        config-changes state-changes\
      </notc:periodic-notifications-supported>
     </notc:subscription-capabilities>
     <datastore-capabilities>
       <datastore>ds:operational</datastore>
       <per-node-capabilities>
         <node-selector>/</node-selector>
         <notc:subscription-capabilities>
           <notc:on-change-supported>\
             state-changes\
           </notc:on-change-supported>
         </notc:subscription-capabilities>
       </per-node-capabilities>
     </datastore-capabilities>
     <datastore-capabilities>
       <datastore>ds:candidate</datastore>
       <per-node-capabilities>
         <node-selector>/</node-selector>
         <notc:subscription-capabilities>

Lengyel, et al.          Expires August 26, 2021               [Page 23]
Internet-Draft    System and  Notification Capabilities    February 2021

           <notc:on-change-supported/>
           <notc:periodic-notifications-supported/>
         </notc:subscription-capabilities>
       </per-node-capabilities>
     </datastore-capabilities>
     <datastore-capabilities>
      <datastore>ds:running</datastore>
       <per-node-capabilities>
         <node-selector>/</node-selector>
         <notc:subscription-capabilities>
           <notc:on-change-supported>\
             config-changes\
           </notc:on-change-supported>
         </notc:subscription-capabilities>
       </per-node-capabilities>
     </datastore-capabilities>
    </system-capabilities>
  </content-data>
</instance-data-set>

     Figure 2: Notification Capabilities with datastore level settings

Appendix C.  Changes between revisions

   Note to RFC Editor (To be removed by RFC Editor)

   v13 - v14

   o  Updated according to sheperds review

   o  Added to import, which imported modules need to be implemented.

   o  Added notes to the RFC editor

   o  Re-arrange the sections, for a better reading flow

   o  Many editorial changes

   o  Replace YANG module prefix

   v12 - v13

   o  Rearranged order of notification capability leafs into 3 groups:
      generic, specific to periodic subscriptions, specific to on-
      change.

   o  Introduced artwork folding in the examples

Lengyel, et al.          Expires August 26, 2021               [Page 24]
Internet-Draft    System and  Notification Capabilities    February 2021

   o  Updated to follow draft-ietf-netmod-yang-instance-file-format-10

   o  Various editing changes

   v11 - v12

   o  Updated max-nodes-per-update description

   o  Reformatted YANG models with pyang -f yang --keep-comments --yang-
      line-length 69

   v10 - v11

   o  Updated examples

   o  Updated typedef notification-support

   v09 - v10

   o  Removed description text from imports about the need for
      implementing the imported module.

   o  Changed notification-support to bits with shorter names

   o  Assigned enum values to supported-excluded-change-type

   o  Made node-selector a choice to allow for future alternative
      selection methods.

   o  Changed precedence of per-node-capabilities entries.  Precedence
      is now according to the position of entries in the list.

   v08 - v09

   o  Split the YANG module into two: ietf-system-capabilities and ietf-
      notification-capabilities.  Restructured/updated the draft
      accordingly.

   v07 - v08

   o  Prepared the YANG model to include other non-YANG-Push related
      capabilities.

   o  Renamed the top level container to system-capabilities

   o  Added a container subscription-capabilities to the grouping
      subscription-capabilities to contain all subscription related
      capabilities

Lengyel, et al.          Expires August 26, 2021               [Page 25]
Internet-Draft    System and  Notification Capabilities    February 2021

   o  Updated examples according to draft-ietf-netmod-yang-instance-
      file-format-06.

   v06 - v07

   o  Updated examples according to draft-ietf-netmod-yang-instance-
      file-format-05.

   v05 - v06

   o  Providing the capability data is only a "SHOULD" recommendation.
      Some reviewers wanted MUST some wanted much less.

   o  The YANG module import statements now indicate the imported
      modules that must be implemented not just available as import as
      requested by the YangDoctors review.

   v04 - v05

   o  Added new capabilities periodic-notifications-supported and
      supported-excluded-change-type.

   o  Restructured YANG module to make the node-selector's usage similar
      to how NACM uses it: "/" means the whole datastore.

   o  Small corrections, spelling, rewording

   o  Replaced the term server with the term publisher except in cases
      where we speak about datastores and functionality based on get,
      getconfig operations.  In this latter case it is really the server
      functionality that is discussed

   v03 - v04

   o  Clarified recommended support for on-change notifications about
      the datastore-subscription-capabilities.

   v02 - v03

   o  Allow throughput related capabilities to be defined on top,
      datastore or data node level.  Described that specific capability
      values always override generic ones.

   o  Indicate that non-NMDA servers can also use this model.

   o  Updated according to draft-ietf-netmod-yang-instance-file-
      format-04

Lengyel, et al.          Expires August 26, 2021               [Page 26]
Internet-Draft    System and  Notification Capabilities    February 2021

   v01 - v02

   o  Added instance data examples

   o  On-change capability can be defined per datastore

   o  Added "if-feature yp:on-change" where relevant

   o  Unified units used

   v00 - v01

   o  Add more capabilities: minimum period, supported period max-number
      of objects, min dampening period, dampening supported

Authors' Addresses

   Balazs Lengyel
   Ericsson
   Magyar Tudosok korutja 11
   1117 Budapest
   Hungary

   Email: balazs.lengyel@ericsson.com

   Alexander Clemm
   Futurewei
   2330 Central Expressway
   Santa Clara, CA 95050
   USA

   Email: ludwig@clemm.org

   Benoit Claise
   Cisco Systems, Inc.
   De Kleetlaan 6a b1
   1831 Diegem
   Belgium

   Email: bclaise@cisco.com

Lengyel, et al.          Expires August 26, 2021               [Page 27]