Internet-Draft | Energy YANG Model for Streaming | February 2025 |
Dom, et al. | Expires 28 August 2025 | [Page] |
This document defines a YANG data model for representing energy measurements from streaming-capable devices. The model supports both instantaneous power readings and correlated streaming metrics needed to analyze energy efficiency in streaming applications.¶
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.¶
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 28 August 2025.¶
Copyright (c) 2025 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.¶
The increasing focus on environmental sustainability in streaming media delivery requires accurate measurement and analysis of energy consumption across the delivery chain. This document defines a YANG data model for reporting energy measurements from streaming-capable devices, along with relevant streaming metrics needed for correlation and analysis.¶
The model is designed to support both A-side (mains power) and B-side (internal component) power measurements while maintaining clear distinction between these measurement types. The internal component usage may be used by a collecting entity to estimate the total device power used if such power measurements are not available within the device.¶
The proposed YANG model defines a comprehensive framework for representing energy measurements in streaming devices. The model is structured around four key components that together provide a complete picture of device energy consumption and its relationship to streaming activities.¶
The core of the model focuses on both instantaneous and historical power measurements. This dual approach allows for real-time monitoring as well as trend analysis. The model distinguishes between total system power (A-side) and component-level power (B-side) measurements to support different measurement capabilities across device types.¶
Proper device identification and capability reporting is important for accurate data interpretation. This component allows devices to clearly communicate their measurement capabilities, ensuring that data consumers can properly interpret and validate the reported measurements.¶
To enable meaningful energy efficiency analysis, the model includes streaming-specific metrics that can be correlated with power measurements. These metrics provide essential context for understanding energy consumption patterns in relation to actual streaming activities.¶
module: eyang +--rw energy-measurements +--rw device-info | +--rw device-id string | +--rw device-type enumeration | +--rw measurement-capabilities | +--rw supports-mains-power? boolean | +--rw supports-component-power? boolean | +--rw supports-component-usage? boolean +--rw power-readings | +--rw timestamp yang:timestamp | +--rw mains-power | | +--rw watts? decimal64 | +--rw component-power | | +--rw cpu-watts? decimal64 | | +--rw gpu-watts? decimal64 | | +--rw memory-watts? decimal64 | | +--rw network-watts? decimal64 | +--rw component-usage | +--rw cpu-usage? decimal64 | +--rw gpu-usage? decimal64 | +--rw memory-usage? decimal64 | +--rw network-usage? decimal64 +--rw streaming-metrics +--rw active-streams? uint32 +--rw total-bandwidth-mbps? decimal64 +--rw video-brightness? uint8 +--rw encoding-parameters? string +--rw network-utilization? decimal64¶
The following shows the JSON schema for data exchange:¶
{ "energy-measurements": { "device-info": { "device-id": "string", "device-type": "string", "measurement-capabilities": { "supports-mains-power": boolean, "supports-component-power": boolean "supports-component-usage": boolean } }, "power-readings": { "timestamp": "string", "mains-power": { "watts": number, }, "component-power": { "cpu-watts": number, "gpu-watts": number, "memory-watts": number, "network-watts": number }, "component-usage": { "cpu-usage": number, "gpu-usage": number, "memory-usage": number, "network-usage": number } }, "streaming-metrics": { "active-streams": number, "total-bandwidth-mbps": number, "video-brightness": number, "encoding-parameters": "string", "network-utilization": number } } }¶
The capability reporting mechanism allows devices to explicitly declare their measurement abilities. This is essential because:¶
This information helps data consumers properly interpret and validate the reported measurements. The following attributes indicates which types of power measurements the device supports:¶
Power readings are structured to support both high-level and detailed energy analysis:¶
The streaming metrics are selected to enable use-case that require correlation analyses:¶
These metrics were chosen based on empirical research showing their relevance to energy consumption patterns.¶
This draft has been elaborated in the context of the working group 7 of Greening of Streaming.¶