Network Inventory YANG G. Chen Internet-Draft Q. Wu, Ed. Intended status: Standards Track Huawei Expires: 27 December 2024 M. Boucadair, Ed. Orange O. G. D. Dios Telefonica I+D C. Pignataro North Carolina State University 25 June 2024 YANG Data Models for Energy Saving Management draft-cwbgp-green-energy-saving-management-00 Abstract This document defines YANG modules for energy saving management at both device and network levels. Also, the document specifies a common module that is used independent of the model layer. Discussion Venues This note is to be removed before publishing as an RFC. Discussion of this document takes place on the Network Inventory YANG Working Group mailing list (inventory-yang@ietf.org), which is archived at https://mailarchive.ietf.org/arch/browse/inventory-yang/. Source for this draft and an issue tracker can be found at https://github.com/boucadair/draft-cwbgp-energy-saving-management. 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 27 December 2024. Chen, et al. Expires 27 December 2024 [Page 1] Internet-Draft Energy Saving Management June 2024 Copyright Notice Copyright (c) 2024 IETF Trust and the persons identified as the document authors. All rights reserved. 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. Notes to the RFC Editor . . . . . . . . . . . . . . . . . 4 2. Conventions and Definitions . . . . . . . . . . . . . . . . . 4 3. YANG Prefixes . . . . . . . . . . . . . . . . . . . . . . . . 5 4. Energy Saving Management Data Model Overview . . . . . . . . 5 4.1. Overview . . . . . . . . . . . . . . . . . . . . . . . . 5 4.2. Common Energy Saving Management Module Structure . . . . 6 4.3. Energy Saving Management Network Model . . . . . . . . . 7 4.4. ESM Inventory Model . . . . . . . . . . . . . . . . . . . 8 5. YANG Modules . . . . . . . . . . . . . . . . . . . . . . . . 9 5.1. Common Module . . . . . . . . . . . . . . . . . . . . . . 9 5.2. Network Module . . . . . . . . . . . . . . . . . . . . . 18 5.3. Network Inventory Module . . . . . . . . . . . . . . . . 21 6. Security Considerations . . . . . . . . . . . . . . . . . . . 24 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 25 7.1. The "IETF XML" Registry . . . . . . . . . . . . . . . . . 25 7.2. The "YANG Module Names" Registry . . . . . . . . . . . . 25 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 26 8.1. Normative References . . . . . . . . . . . . . . . . . . 26 8.2. Informative References . . . . . . . . . . . . . . . . . 27 Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . . 28 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 28 1. Introduction With the growth of networks and the increase of awareness about the environmental impact, it is important to ensure energy efficiency in the operation of network infrastructures. Operators are thus seeking for more information to reflect the power consumption of a network and the contribution of involved nodes. As described in Section 3.4 of [RFC6988], monitoring energy, power can be required for purposes such as: Chen, et al. Expires 27 December 2024 [Page 2] Internet-Draft Energy Saving Management June 2024 * designing control loops for energy saving, * investigating energy-saving potential, * evaluating the effectiveness of energy-saving policies and measures, * accounting for the total power received and provided by an entity, a network, or a service, * predicting an entity's reliability based on power usage, and * planning for the next maintenance cycle for an entity However, there are no standard mechanisms to report and control power usage or energy consumption of different networking equipment under different network configuration and conditions. For example, in 'tidal network' in which traffic volume undergoes significant fluctuations at different times, various energy management methods might be envisaged to optimize the energy efficiency at the network scale, e.g., by selectively disabling ports or cards on specific network nodes based on (forecast) traffic patterns. This document defines YANG modules for use in energy management within a newtork. The modules covers both network and device levels (Section 3.5.1 of [I-D.ietf-netmod-rfc8407bis]). The modules can be used, e.g., for monitoring the energy consumption of network devices, such as (but are not limited to) routers, switches, security gateways, hosts, or servers. Where applicable, device monitoring extends to the individual components of the device. The network model augments the "ietf-network" module [RFC8345], while the inventory model augments the "ietf-network-inventory" module [I-D.ietf-ivy-network-inventory-yang] with the following rationale: * Parameters that reflect the saving modes and methods are considered as capabilities, and are thus maintained in the inventory. * Required parameters to control and adjust nodes and components behaviors are added to the network topology as this allows operator to better assess the implications on node-specific action on the overall network. The document leverages types defined in [RFC3418] and [RFC6933]. Chen, et al. Expires 27 December 2024 [Page 3] Internet-Draft Energy Saving Management June 2024 1.1. Notes to the RFC Editor Note to the RFC Editor: This section is to be removed prior to publication. 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. Please apply the following replacements: * XXXX --> the RFC number assigned to this I-D * IIII --> the RFC number assigned to [I-D.ietf-ivy-network-inventory-yang] * 2024-01-23 --> the actual date of the publication of this document 2. Conventions and Definitions 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] [RFC8174] when, and only when, they appear in all capitals, as shown here. The meanings of the symbols in the YANG tree diagrams are defined in [RFC8340]. The following terms are used in the document: Network Inventory: A collection of data for network devices and their components managed by a specific management system [I-D.ietf-ivy-network-inventory-yang]. Chassis: A physical container that allows installation of power modules, fan modules, and various types of boards and cards [I-D.ietf-ivy-network-inventory-yang]. Network Element: A manageable network entity that contains hardware and software units, e.g., a network device installed on one or several chassis [I-D.ietf-ivy-network-inventory-yang]. Board and Card: A pluggable equipment can be inserted into one or several slots/ sub-slots and can afford a specific transmission function independently [I-D.ietf-ivy-network-inventory-yang]. The core modular units for processing data. Depending on functions, they can be classified into Main Processing Unit (MPU), Switch Chen, et al. Expires 27 December 2024 [Page 4] Internet-Draft Energy Saving Management June 2024 Fabric Unit (SFU), Line Processing Unit (LPU), and other types. MPU is responsible for system control, management, and monitoring. SFU is responsible for line-rate data switching on the data plane. LPU is responsible for data packet processing and traffic management. Port and Interface: A port is a physical entity that is used for connections. While an interface is a logical entity for connections. 3. YANG Prefixes Names of data nodes and other data model objects are prefixed using the standard prefix associated with the corresponding YANG imported modules, as shown in Table 1. +======+======================+=====================================+ |Prefix|YANG Module |Reference | +======+======================+=====================================+ |ianahw|iana-hardware |[IANA_YANG] | +------+----------------------+-------------------------------------+ |ni |ietf-network-inventory|[I-D.ietf-ivy-network-inventory-yang]| +------+----------------------+-------------------------------------+ |yang |ietf-yang-types |[RFC6991] | +------+----------------------+-------------------------------------+ Table 1: Prefixes and Corresponding YANG modules 4. Energy Saving Management Data Model Overview 4.1. Overview As described in [I-D.ietf-ivy-network-inventory-yang], the Network Inventory YANG data model is used to maintain the base network inventory information. This document defines the YANG module "ietf- ni-energy-saving", which augments network element of the network Inventory base model with energy saving modes, associated energy saving methods and augments the component of the network inventory base model with capability related power attributes. "ietf-ntw-energy-saving" augments the node of asbstract network model defined in [RFC8345] with energy consumption and power usage related attributes. At the network element level, the data model covers configuration of the energy saving mode and a set of related parameters to manage (e.g., retrieve or adjust) the status of power units, fans, boards, cards, ports, processors, and links. For example, the adjustment methods include frequency tuning, shutdown, or sleep mode. In addition, the methods also support the energy Chen, et al. Expires 27 December 2024 [Page 5] Internet-Draft Energy Saving Management June 2024 saving configuration for the 'tidal' traffic flow, where related components can be turned off, e.g., during "idle" hours to optimize the energy consumption and then woken up based on some triggered (e.g., busy hours or other scheduled events). The data model defines energy saving modes representing some energy consumption levels, which are basic, standard, or deep. For each consumption level, there is a combination of methods to reach the energy saving target level. At the component level, the data model includes a set of monitoring statistics for energy consumption and energy saving operational state of each component within the network device. It also includes threshold related power parameters such as rated power, expected volts. In order to ease reuse of various paramters independent of the module layer, this document alos defines a common model: "ietf-energy- saving-common". The structure of each module is provided in the following subsections. 4.2. Common Energy Saving Management Module Structure Figure 1 shows the tree diagram of the YANG data model defined in Section 5. Chen, et al. Expires 27 December 2024 [Page 6] Internet-Draft Energy Saving Management June 2024 module: ietf-energy-saving-common grouping energy-consumption-data: +-- average-power? yang:gauge64 +-- saved-power? yang:gauge64 +-- real-power? yang:gauge64 +-- actual-volts? int32 +-- actual-amperes? int32 +-- actual-celsius? int32 grouping energy-saving-modes: +-- energy-saving-mode* [mode] +-- mode? identityref +-- energy-saving-method* identityref grouping power-parameters: +-- temperature-upper-bound? int32 +-- temperature-middle-bound? int32 +-- temperature-lower-bound? int32 +-- rated-power? yang:gauge64 +-- expected-volts? int32 +-- low-volts-bound? int32 +-- low-volts-fatal? int32 +-- high-volts-bound? int32 +-- high-volts-fatal? int32 grouping energy-power-consumption-stats: +-- total-energy-consumption? yang:gauge64 +-- saved-energy? yang:gauge64 +-- eer? decimal64 Figure 1: Common Energy Saving Management Tree Structure 4.3. Energy Saving Management Network Model The structure of the ESM Network Model is depicted in Figure 2. Chen, et al. Expires 27 December 2024 [Page 7] Internet-Draft Energy Saving Management June 2024 module: ietf-ntw-energy-saving augment /nw:networks/nw:network/nw:node: +--ro energy-power-consumption {esm-common:energy-saving}? | +--ro total-energy-consumption? yang:gauge64 | +--ro saved-energy? yang:gauge64 | +--ro eer? decimal64 +--rw energy-saving-modes {esm-common:energy-saving}? | +--rw energy-saving-mode* [mode] | +--rw mode identityref | +--rw energy-saving-method* identityref +--ro component* [name] {esm-common:energy-saving}? +--ro name string +--ro class identityref +--ro energy-monitoring +--ro energy-consumption | +--ro average-power? yang:gauge64 | +--ro saved-power? yang:gauge64 | +--ro real-power? yang:gauge64 | +--ro actual-volts? int32 | +--ro actual-amperes? int32 | +--ro actual-celsius? int32 +--ro energy-saving +--ro enabled? boolean +--ro power-state? identityref Figure 2: ESM Network Model Tree Structure 4.4. ESM Inventory Model The structure of the ESM Network Inventory Model is depicted in Figure 3. Chen, et al. Expires 27 December 2024 [Page 8] Internet-Draft Energy Saving Management June 2024 module: ietf-ni-energy-saving grouping network-element-ref: +-- ne-ref? leafref grouping component-ref: +-- node-ref? leafref +-- ne-ref? leafref augment /ni:network-inventory/ni:network-elements /ni:network-element: +--ro energy-management {esm-common:energy-saving}? +--ro energy-monitoring-capability? boolean +--ro energy-saving-modes +--ro energy-saving-mode* [mode] +--ro mode identityref +--ro energy-saving-method* identityref augment /ni:network-inventory/ni:network-elements /ni:network-element/ni:components/ni:component: +--ro power-parameters {esm-common:energy-saving}? +--ro temperature-upper-bound? int32 +--ro temperature-middle-bound? int32 +--ro temperature-lower-bound? int32 +--ro rated-power? yang:gauge64 +--ro expected-volts? int32 +--ro low-volts-bound? int32 +--ro low-volts-fatal? int32 +--ro high-volts-bound? int32 +--ro high-volts-fatal? int32 Figure 3: ESM Inventory Model Tree Structure 5. YANG Modules 5.1. Common Module The module imports types defined in [RFC6991]. file "ietf-energy-saving-common@2024-01-23.yang" module ietf-energy-saving-common { yang-version 1.1; namespace "urn:ietf:params:xml:ns:yang:ietf-energy-saving-common"; prefix esm-common; import ietf-yang-types { prefix yang; reference "RFC 6991: Common YANG Types"; } Chen, et al. Expires 27 December 2024 [Page 9] Internet-Draft Energy Saving Management June 2024 organization "IETF xxx Working Group."; contact "WG Web: ; WG List: Author: Gen Chen Editor: Qin Wu Editor: Mohamed Boucadair Author: Carlos Pignataro "; description "This module contains a collection of YANG definitions for power and energy management of devices. It also augments both the network topology and inventory models. Copyright (c) 2024 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). This version of this YANG module is part of RFC XXXX; see the RFC itself for full legal notices."; revision 2024-01-23 { description "Initial revision."; reference "RFC XXXX: YANG Data Models for Energy Saving Management"; } feature energy-saving { description "Specifies support of energy saving management."; } identity energy-saving-mode { description "Base identity for energy saving mode."; } Chen, et al. Expires 27 December 2024 [Page 10] Internet-Draft Energy Saving Management June 2024 identity basic { base energy-saving-mode; description "Basic energy saving mode. In this mode, the system will shut down idle modules and put them in a sleep mode."; } identity standard { base energy-saving-mode; description "Standard energy saving mode. In this mode, the system extends basic energy saving mode with more advanced Lossless energy saving features, e.g., power module schedule."; } identity deep { base energy-saving-mode; description "Deep energy saving mode. In this mode, the system extends standard energy saving mode with more advanced system level energy saving features, e.g., board scheduling."; } identity energy-saving-method { description "Base identity for energy saving method."; } identity zone-based-fan-speed-adjustment { base energy-saving-method; description "The system collects information about the temperatures of the service boards in the chassis and the zones where the service boards reside. According to the current temperature and target temperature of each board, the system implements stepless speed adjustment in different zones."; } identity unused-high-speed-interface-shutdown { base energy-saving-method; Chen, et al. Expires 27 December 2024 [Page 11] Internet-Draft Energy Saving Management June 2024 description "When detecting an unused high-speed interface, the system shuts down the interface to reduce power consumption of the interface circuits. When the interface needs to run service, the system will automatically wake up the interface and restore the interface to the normal working state."; } identity unused-port-shutdown { base energy-saving-method; description "When detecting an unused user port, the system automatically or manually shuts down the interface circuits and optical module of the port to reduce port power consumption. When detecting that the port needs to run service, the system automatically enables the port and restores the port to the normal running state, without affecting application of the board."; } identity unused-board-shutdown { base energy-saving-method; description "When detecting an unused board, the system automatically shuts down the power supply of the board, ensuring zero power consumption of an unused board. When detecting that the board needs to run service, the system automatically powers on the board and restores the board to the normalrunning state, without affecting application of the whole device."; } identity dynamic-frequency-adjustment { base energy-saving-method; description "When detecting that a service board is carrying a small service load, the system automatically reduces the working frequency of the service processing module of the board while maintaining the service quality. In doing so, power consumption of the service processing module is reduced. When the service load of the board increases, the system automatically increases the working frequency of the service processing module to meet service needs."; } Chen, et al. Expires 27 December 2024 [Page 12] Internet-Draft Energy Saving Management June 2024 identity unused-channel-shutdown { base energy-saving-method; description "When an unused channel is detected, the unused channel is closed. Dynamically open the channel when detecting that there are services on the channel."; } identity load-based-power-module-scheduling { base energy-saving-method; description "Power modules intelligently schedule internal power supply based on the power load. When the power load decreases, some power supplies are automatically disabled. When the power load increases, the disabled power supplies are enabled again. "; } identity load-based-board-scheduling { base energy-saving-method; description "Boards intelligently schedule internal forwarding resources based on the service load. When the service load decreases, some forwarding resources are automatically disabled or the working frequency of the forwarding resources is reduced. When the service load increases, the disabled forwarding resources are enabled again or the working frequency of forwarding resources is improved. In the case of burst traffic, packet forwarding may be delayed, but packets will not be lost."; } identity energy-saving-power-state { description "Base identity for power state."; reference "RFC 7326: Energy Management Framework"; } identity off-state { base energy-saving-power-state; description "Indicates that the component typically requires a complete boot when awakened."; reference "RFC 7326: Energy Management Framework"; Chen, et al. Expires 27 December 2024 [Page 13] Internet-Draft Energy Saving Management June 2024 } identity sleep-state { base energy-saving-power-state; description "Indicates that a component with energy management support is not functional but immediately available such as wake up mechanism."; reference "RFC 7326: Energy Management Framework"; } identity low-power-state { base energy-saving-power-state; description "Indicates that some components with energy management support are not available and these components can take measures to use less energy."; reference "RFC 7326: Energy Management Framework"; } identity full-power-state { base energy-saving-power-state; description "Indicates that all components with energy management support are available and may use maximum power."; reference "RFC 7326: Energy Management Framework"; } typedef energy-saving-operator { type enumeration { enum on { value 1; description "Power-on for energy saving."; } enum off { value 2; description "Power-off for energy saving."; } } description "Energy saving operator."; } Chen, et al. Expires 27 December 2024 [Page 14] Internet-Draft Energy Saving Management June 2024 grouping energy-consumption-data { description "Grouping for energy monitoring."; leaf average-power { type yang:gauge64; units "mW"; description "The average consumed power."; } leaf saved-power { type yang:gauge64; units "mW"; description "The saved power."; } leaf real-power { type yang:gauge64; units "mW"; description "The actual observed consumed power."; reference "RFC 6988: Requirements for Energy Management"; } leaf actual-volts { type int32; units "mV"; description "The actual observed voltage."; reference "RFC 6988: Requirements for Energy Management"; } leaf actual-amperes { type int32; units "mA"; description "The actual observed current."; reference "RFC 6988: Requirements for Energy Management"; } leaf actual-celsius { type int32; units "0.01 C"; description "The actual observed temperature."; } } grouping energy-saving-modes { Chen, et al. Expires 27 December 2024 [Page 15] Internet-Draft Energy Saving Management June 2024 description "Grouping for energy saving mode and methods."; list energy-saving-mode { key "mode"; description "The energy saving mode."; leaf mode { type identityref { base energy-saving-mode; } description "The energy saving mode."; } leaf-list energy-saving-method { type identityref { base energy-saving-method; } description "The energy saving method."; } } } grouping power-parameters { description "Grouping for energy paramters."; leaf temperature-upper-bound { type int32; units "0.01 C"; description "The upper bound overheat temperature of the component. Upon the upper bound is exceeded, an alarm will be triggered to indicate fatal failure."; reference "RFC 8632: A YANG Data Model for Alarm Management"; } leaf temperature-middle-bound { type int32; units "0.01 C"; description "The middle bound overheat temperature of the component. Upon the middle bound is exceeded, an alarm will be triggered."; reference "RFC 8632: A YANG Data Model for Alarm Management"; } leaf temperature-lower-bound { type int32; Chen, et al. Expires 27 December 2024 [Page 16] Internet-Draft Energy Saving Management June 2024 units "0.01 C"; description "The lower bound overheat temperature of the component. Upon the lower bound is exceeded, the alarm will be triggered."; reference "RFC 8632: A YANG Data Model for Alarm Management"; } leaf rated-power { type yang:gauge64; units "mW"; description "The rated power."; } leaf expected-volts { type int32; units "mV"; description "The expected volts."; } leaf low-volts-bound { type int32; units "mV"; description "The lower volts bound which might cause equipment misbehavior or even damage."; } leaf low-volts-fatal { type int32; units "mV"; description "The lowest volts bound which might cause equipment fatal damage."; } leaf high-volts-bound { type int32; units "mV"; description "The higher volts bound which should trigger an alarm."; reference "RFC 8632: A YANG Data Model for Alarm Management"; } leaf high-volts-fatal { type int32; units "mV"; description "The highest volts bound of monitoring class which will cause fatal failure."; Chen, et al. Expires 27 December 2024 [Page 17] Internet-Draft Energy Saving Management June 2024 } } grouping energy-power-consumption-stats { description "Statistics data about energy and power monitoring."; leaf total-energy-consumption { type yang:gauge64; units "Wh"; description "Accumulated energy consumption of equipment."; } leaf saved-energy { type yang:gauge64; units "Wh"; description "Saved energy consumption of equipment."; } leaf eer { type decimal64 { fraction-digits 18; } units "Gbps/Watt"; description "The energy efficiency rating (EER) is a metric generally defined as a functional unit divided by the energy used."; } } } 5.2. Network Module The module imports "ietf-network" [RFC8345] and "ietf-energy-saving- common". file "ietf-ntw-energy-saving@2024-01-23.yang" module ietf-ntw-energy-saving { yang-version 1.1; namespace "urn:ietf:params:xml:ns:yang:ietf-ntw-energy-saving"; prefix esm-ntw; import ietf-energy-saving-common { prefix esm-common; reference "RFC XXXX: YANG Data Models for Energy Saving Management"; } Chen, et al. Expires 27 December 2024 [Page 18] Internet-Draft Energy Saving Management June 2024 import ietf-network { prefix nw; reference "RFC 8345: A YANG Data Model for Network Topologies"; } import ietf-yang-types { prefix yang; reference "RFC 6991: Common YANG Types"; } import iana-hardware { prefix ianahw; reference "https://www.iana.org/assignments/iana-hardware/iana-hardware.xhtml"; } organization "IETF XXX Working Group."; contact "WG Web: ; WG List: Author: Gen Chen Editor: Qin Wu Editor: Mohamed Boucadair Author: Carlos Pignataro "; description "This module contains a collection of YANG definitions for power and energy management of devices. It also augments both the network topology and inventory models. Copyright (c) 2024 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). This version of this YANG module is part of RFC XXXX; see the RFC itself for full legal notices."; revision 2024-01-23 { Chen, et al. Expires 27 December 2024 [Page 19] Internet-Draft Energy Saving Management June 2024 description "Initial revision."; reference "RFC XXXX: YANG Data Models for Energy Saving Management"; } augment "/nw:networks/nw:network/nw:node" { if-feature "esm-common:energy-saving"; description "Energy monitoring data for network elements."; container energy-power-consumption { config false; description "Statistics data about energy and power monitoring."; uses esm-common:energy-power-consumption-stats; leaf start-time { type yang:date-and-time; description "The time (in hundredths of a second) since the network management portion of the system was last re-initialized. It corresponds to the sysUpTime MIB object. It specifies the start time of the energy measurement results collection."; reference "RFC 3418: Management Information Base (MIB) for the Simple Network Management Protocol (SNMP)"; } } container energy-saving-modes { description "List of the energy saving mode."; uses esm-common:energy-saving-modes; } list component { key name; config false; description "List of components."; leaf name { type string; description "The name assigned to this component. This name is not required to be the same as entPhysicalName."; } leaf class { type identityref { base ianahw:hardware-class; Chen, et al. Expires 27 December 2024 [Page 20] Internet-Draft Energy Saving Management June 2024 } mandatory true; description "An indication of the general hardware type of the component."; reference "RFC 6933: Entity MIB (Version 4) - entPhysicalClass"; } container energy-monitoring { description "Energy monitoring data for components."; container energy-consumption { description "Statistics of component about energy monitoring."; uses esm-common:energy-consumption-data; } container energy-saving { description "Controls energy saving parameters of a component."; leaf enabled { type boolean; default "true"; description "Controls whether the energy-saving of the component is enabled (when set to true) or disabled (set to false)."; } leaf power-state { type identityref { base esm-common:energy-saving-power-state; } description "The device energy saving operator state."; } } } } } } 5.3. Network Inventory Module The module imports "ietf-network-inventory" [I-D.ietf-ivy-network-inventory-yang] and "ietf-energy-saving- common". Chen, et al. Expires 27 December 2024 [Page 21] Internet-Draft Energy Saving Management June 2024 file "ietf-ni-energy-saving@2024-01-23.yang" module ietf-ni-energy-saving { yang-version 1.1; namespace "urn:ietf:params:xml:ns:yang:ietf-ni-energy-saving"; prefix esm-ni; import ietf-energy-saving-common { prefix esm-common; reference "RFC XXXX: YANG Data Models for Energy Saving Management"; } import ietf-network-inventory { prefix ni; reference "RFC IIII: A YANG Data Model for Network Inventory"; } organization "IETF xxx Working Group."; contact "WG Web: ; WG List: Author: Gen Chen Editor: Qin Wu Editor: Mohamed Boucadair Author: Carlos Pignataro "; description "This module contains a collection of YANG definitions for power and energy management of devices. It also augments both the network topology and inventory models. Copyright (c) 2024 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). This version of this YANG module is part of RFC XXXX; see the RFC itself for full legal notices."; Chen, et al. Expires 27 December 2024 [Page 22] Internet-Draft Energy Saving Management June 2024 revision 2024-01-23 { description "Initial revision."; reference "RFC XXXX: YANG Data Models for Energy Saving Management"; } grouping network-element-ref { description "Contains the information necessary to reference a network element."; leaf ne-ref { type leafref { path "/ni:network-inventory/ni:network-elements" + "/ni:network-element/ni:ne-id"; require-instance false; } description "Used to reference a network element."; } } grouping component-ref { description "Contains the information necessary to reference a component."; leaf node-ref { type leafref { path "/ni:network-inventory/ni:network-elements" + "/ni:network-element[ni:ne-id=" + "current()/../ne-ref]/ni:components/ni:component" + "/ni:component-id"; require-instance false; } description "Used to reference a component."; } uses network-element-ref; } augment "/ni:network-inventory/ni:network-elements" + "/ni:network-element" { if-feature "esm-common:energy-saving"; description "Energy management static data for network element."; container energy-management { config false; description "Statistics of the energy management."; Chen, et al. Expires 27 December 2024 [Page 23] Internet-Draft Energy Saving Management June 2024 leaf energy-monitoring-capability { type boolean; description "Indicates whether monitoring can be performed."; } container energy-saving-modes { description "List of supported energy saving modes."; uses esm-common:energy-saving-modes; } } } augment "/ni:network-inventory/ni:network-elements" + "/ni:network-element/ni:components/ni:component" { if-feature "esm-common:energy-saving"; description "Energy management static data for component."; container power-parameters { config false; description "Power parameter monitoring."; uses esm-common:power-parameters; } } } 6. Security Considerations This section uses the template described in Section 3.7 of [I-D.ietf-netmod-rfc8407bis]. The YANG modules specified in this document define a schema for data that is designed to be accessed via network management protocol such as NETCONF [RFC6241] or RESTCONF [RFC8040].These network management protocols are required to use a secure transport layer and mutual authentication, e.g., SSH [RFC6242] without the "none" authentication option, Transport Layer Security (TLS) [RFC8446] with mutual X.509 authentication, and HTTPS with HTTP authentication (Section 11 of [RFC9110]). The Network Configuration Access Control Model (NACM) [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. Chen, et al. Expires 27 December 2024 [Page 24] Internet-Draft Energy Saving Management June 2024 There are several data nodes defined in this YANG module that are writable/creatable/deletable (i.e., config true, which is the default). These data nodes may be considered sensitive or vulnerable in some network environments. Write operations (e.g., edit-config) to these data nodes without proper protection can have a negative effect on network operations. Specifically, the following subtrees and data nodes have particular sensitivities/vulnerabilities: energy-saving-modes: This leaf specifies the energy saving mode set globally on a device. esm-ntw:energy-saving/esm-ntw:enabled: This leaf enable/disables energy saving state of specific component. Some of the readable data nodes in this YANG module may be considered sensitive or vulnerable in some network environments. It is thus important to control read access (e.g., via get, get- config, or notification) to these data nodes. Specifically, the following subtrees and data nodes have particular sensitivities/ vulnerabilities: 'TBC': .... 7. IANA Considerations 7.1. The "IETF XML" Registry This document requests IANA to register the following URIs in the "ns" subregistry within the "IETF XML Registry" [RFC3688]: URI: urn:ietf:params:xml:ns:yang:ietf-energy-saving-common Registrant Contact: The IESG. XML: N/A, the requested URIs are XML namespaces. URI: urn:ietf:params:xml:ns:yang:ietf-ntw-energy-saving Registrant Contact: The IESG. XML: N/A, the requested URIs are XML namespaces. URI: urn:ietf:params:xml:ns:yang:ietf-ni-energy-saving Registrant Contact: The IESG. XML: N/A, the requested URIs are XML namespaces. 7.2. The "YANG Module Names" Registry This document requests IANA to register the following YANG modules in the "YANG Module Names" registry [RFC6020] within the "YANG Parameters" registry group. Chen, et al. Expires 27 December 2024 [Page 25] Internet-Draft Energy Saving Management June 2024 name: ietf-energy-saving-common prefix: esm-common namespace: urn:ietf:params:xml:ns:yang:ietf-energy-saving-common Maintained by IANA? N Reference: RFC XXXX name: ietf-ntw-energy-saving prefix: esm-ntw namespace: urn:ietf:params:xml:ns:yang:ietf-ntw-energy-saving Maintained by IANA? N Reference: RFC XXXX name: ietf-ni-energy-saving prefix: esm-ni namespace: urn:ietf:params:xml:ns:yang:ietf-ni-energy-saving Maintained by IANA? N Reference: RFC XXXX 8. References 8.1. Normative References [I-D.ietf-ivy-network-inventory-yang] Yu, C., Belotti, S., Bouquier, J., Peruzzini, F., and P. Bedard, "A YANG Data Model for Network Inventory", Work in Progress, Internet-Draft, draft-ietf-ivy-network- inventory-yang-01, 4 March 2024, . [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, . [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, DOI 10.17487/RFC3688, January 2004, . [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for the Network Configuration Protocol (NETCONF)", RFC 6020, DOI 10.17487/RFC6020, October 2010, . [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, . Chen, et al. Expires 27 December 2024 [Page 26] Internet-Draft Energy Saving Management June 2024 [RFC6991] Schoenwaelder, J., Ed., "Common YANG Data Types", RFC 6991, DOI 10.17487/RFC6991, July 2013, . [RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017, . [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2017, . [RFC8341] Bierman, A. and M. Bjorklund, "Network Configuration Access Control Model", STD 91, RFC 8341, DOI 10.17487/RFC8341, March 2018, . [RFC8345] Clemm, A., Medved, J., Varga, R., Bahadur, N., Ananthakrishnan, H., and X. Liu, "A YANG Data Model for Network Topologies", RFC 8345, DOI 10.17487/RFC8345, March 2018, . 8.2. Informative References [I-D.cx-opsawg-green-metrics] Clemm, A., Dong, L., Mirsky, G., Ciavaglia, L., Tantsura, J., Odini, M., Schooler, E., Rezaki, A., and C. Pignataro, "Green Networking Metrics", Work in Progress, Internet- Draft, draft-cx-opsawg-green-metrics-02, 4 March 2024, . [I-D.ietf-netmod-rfc8407bis] Bierman, A., Boucadair, M., and Q. Wu, "Guidelines for Authors and Reviewers of Documents Containing YANG Data Models", Work in Progress, Internet-Draft, draft-ietf- netmod-rfc8407bis-12, 21 June 2024, . [I-D.manral-bmwg-power-usage] Manral, V., Sharma, P., Banerjee, S., and Y. Ping, "Benchmarking Power usage of networking devices", Work in Progress, Internet-Draft, draft-manral-bmwg-power-usage- 04, 12 March 2013, . Chen, et al. Expires 27 December 2024 [Page 27] Internet-Draft Energy Saving Management June 2024 [RFC3418] Presuhn, R., Ed., "Management Information Base (MIB) for the Simple Network Management Protocol (SNMP)", STD 62, RFC 3418, DOI 10.17487/RFC3418, December 2002, . [RFC6242] Wasserman, M., "Using the NETCONF Protocol over Secure Shell (SSH)", RFC 6242, DOI 10.17487/RFC6242, June 2011, . [RFC6933] Bierman, A., Romascanu, D., Quittek, J., and M. Chandramouli, "Entity MIB (Version 4)", RFC 6933, DOI 10.17487/RFC6933, May 2013, . [RFC6988] Quittek, J., Ed., Chandramouli, M., Winter, R., Dietz, T., and B. Claise, "Requirements for Energy Management", RFC 6988, DOI 10.17487/RFC6988, September 2013, . [RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams", BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018, . [RFC8446] Rescorla, E., "The Transport Layer Security (TLS) Protocol Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018, . [RFC9110] Fielding, R., Ed., Nottingham, M., Ed., and J. Reschke, Ed., "HTTP Semantics", STD 97, RFC 9110, DOI 10.17487/RFC9110, June 2022, . Acknowledgments This work has benefited from the discussions that occured during the Sustainable Networking Side Meeting in IETF#117 and the "e-impact" IAB workshop. In particular, [I-D.cx-opsawg-green-metrics] assess several sustainability-related attributes such as power consumption, energy efficiency, and carbon footprint associated with a network, its equipment, and the services that are provided over it and suggest a set of metrics that provide network observability and can be used to optimize a network's "greenness". [I-D.manral-bmwg-power-usage] provides suggestions for measuring power usage of live networks under different traffic loads and various switch router configuration settings. Authors' Addresses Chen, et al. Expires 27 December 2024 [Page 28] Internet-Draft Energy Saving Management June 2024 Gen Chen Huawei China Email: chengen@huawei.com Qin Wu (editor) Huawei China Email: bill.wu@huawei.com Mohamed Boucadair (editor) Orange France Email: mohamed.boucadair@orange.com Oscar Gonzales de Dios Telefonica I+D Spain Email: oscar.gonzalezdedios@telefonica.com Carlos Pignataro North Carolina State University United States of America Email: cpignata@gmail.com, cmpignat@ncsu.edu Chen, et al. Expires 27 December 2024 [Page 29]