module ietf-vn-kpi-telemetry {
yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-vn-kpi-telemetry";
prefix vn-kpi;
/* Import VN */
import ietf-vn {
prefix vn;
reference
"I-D.ietf-teas-actn-vn-yang: A YANG Data Model for VN
Operation";
}
/* Import TE */
import ietf-te {
prefix te;
reference
"I-D.ietf-teas-yang-te: A YANG Data Model for Traffic
Engineering Tunnels and Interfaces";
}
/* Import TE Common types */
import ietf-te-types {
prefix te-types;
reference
"RFC 8776: Common YANG Data Types for Traffic Engineering";
}
/* Import TE KPI */
import ietf-te-kpi-telemetry {
prefix te-kpi;
reference
"RFC XXXX: YANG models for VN/TE Performance Monitoring
Telemetry and Scaling Intent Autonomics";
}
/* Note: The RFC Editor will replace XXXX with the number
assigned to this draft.*/
organization
"IETF Traffic Engineering Architecture and Signaling (TEAS)
Working Group";
contact
"WG Web:
WG List:
Editor: Young Lee
Dhruv Dhody ";
description
"This module describes YANG data models for performance
monitoring telemetry for Virtual Network (VN).
Copyright (c) 2020 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 Simplified 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.
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.";
/* Note: The RFC Editor will replace XXXX with the number
assigned to the RFC once draft-lee-teas-pm-telemetry-
autonomics becomes an RFC.*/
revision 2020-07-13 {
description
"Initial revision.";
reference
"RFC XXXX: YANG models for VN/TE Performance Monitoring
Telemetry and Scaling Intent Autonomics";
}
typedef grouping-operation {
type enumeration {
enum MINIMUM {
description
"Select the minimum param";
}
enum MAXIMUM {
description
"Select the maximum param";
}
enum MEAN {
description
"Select the MEAN of the params";
}
enum STD_DEV {
description
"Select the standard deviation of the monitored params";
}
enum AND {
description
"Select the AND of the params";
}
enum OR {
description
"Select the OR of the params";
}
}
description
"Operations to analize list of monitored params";
}
grouping vn-telemetry-param {
description
"augment of te-kpi:telemetry-param for VN specific params";
leaf-list te-grouped-params {
type leafref {
path
"/te:te/te:tunnels/te:tunnel/te-kpi:te-telemetry/te-kpi:id";
}
description
"Allows the definition of a vn-telemetry param
as a grouping of underlying TE params";
}
leaf grouping-operation {
type grouping-operation;
description
"describes the operation to apply to
te-grouped-params";
}
}
augment "/vn:vn/vn:vn-list" {
description
"Augmentation parameters for state TE VN topologies.";
container vn-scaling-intent {
description
"scaling intent";
container scale-in-intent {
description
"VN scale-in";
uses te-kpi:scaling-in-intent;
}
container scale-out-intent {
description
"VN scale-out";
uses te-kpi:scaling-out-intent;
}
}
container vn-telemetry {
config false;
description
"VN telemetry params";
uses te-types:performance-metrics-attributes;
leaf grouping-operation {
type grouping-operation;
description
"describes the operation to apply to the VN-members";
}
}
}
augment "/vn:vn/vn:vn-list/vn:vn-member-list" {
description
"Augmentation parameters for state TE vn member topologies.";
container vn-member-telemetry {
config false;
description
"VN member telemetry params";
uses te-types:performance-metrics-attributes;
uses vn-telemetry-param;
}
}
}