module ietf-vn-kpi-telemetry {
yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-vn-kpi-telemetry";
prefix vn-tel;
import ietf-vn {
prefix vn;
reference
"I-D.ietf-teas-actn-vn-yang: A YANG Data Model for VN
Operation";
}
import ietf-te {
prefix te;
reference
"I-D.ietf-teas-yang-te: A YANG Data Model for Traffic
Engineering Tunnels and Interfaces";
}
import ietf-te-types {
prefix te-types;
reference
"I-D.ietf-teas-yang-te-types: Traffic Engineering Common
YANG Types";
}
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 YYYY with the number
assigned to the RFC once draft-lee-teas-actn-pm-telemetry
-autonomics becomes an RFC.*/
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 vn.
Copyright (c) 2019 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
(http://trustee.ietf.org/license-info).
This version of this YANG module is part of RFC XXXX; see
the RFC itself for full legal notices.";
/* 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 2019-10-30 {
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;
}
}
}