netconfcentral logo

ietf-te-kpi-telemetry

HTML

ietf-te-kpi-telemetry@2017-10-25



  module ietf-te-kpi-telemetry {

    yang-version 1;

    namespace
      "urn:ietf:params:xml:ns:yang:ietf-te-kpi-telemetry";

    prefix te-tel;

    import ietf-te {
      prefix te;
    }
    import ietf-routing-types {
      prefix rt;
    }

    organization
      "IETF Traffic Engineering Architecture and Signaling (TEAS)
        Working Group";

    contact
      "Editor: Young Lee <leeyoung@huawei.com>
         Editor: Dhruv Dhody <dhruv.ietf@gmail.com>
         Editor: Ricard Vilalta <ricard.vilalta@cttc.es>
         Editor: Satish Karunanithi <satish.karunanithi@gmail.com>";

    description
      "This module describes telemetry for teas tunnel model";

    revision "2017-10-25" {
      description
        "Initial revision. This YANG file defines
            the reusable base types for TE telemetry.";
      reference
        "Derived from earlier versions of base YANG files";

    }


    identity telemetry-param-type {
      base 
      description
        "Base identity for telemetry param types";
    }

    identity one-way-delay {
      base telemetry-param-type;
      description
        "To specify average Delay in one (forward) direction";
    }

    identity two-way-delay {
      base telemetry-param-type;
      description
        "To specify average Delay in both (forward and reverse)
             directions";
    }

    identity one-way-delay-variation {
      base telemetry-param-type;
      description
        "To specify average Delay Variation in one (forward) direction";
    }

    identity two-way-delay-variation {
      base telemetry-param-type;
      description
        "To specify average Delay Variation in both (forward and reverse)
             directions";
    }

    identity one-way-packet-loss {
      base telemetry-param-type;
      description
        "To specify packet loss in one (forward) direction.";
    }

    identity two-way-packet-loss {
      base telemetry-param-type;
      description
        "To specify packet loss in in both (forward and reverse)
             directions";
    }

    identity utilized-bandwidth {
      base telemetry-param-type;
      description
        "To specify utilized bandwidth over the specified source
             and destination.";
    }

    identity utilized-bandwidth-percentage {
      base telemetry-param-type;
      description
        "To specify utilization percentage of the entity (e.g.,
tunnel, link, etc.)";
    }

    typedef scaling-criteria-operation {
      type enumeration {
        enum "AND" {
          value 0;
          description "AND operation";
        }
        enum "OR" {
          value 1;
          description "OR operation";
        }
      }
      description
        "Operations to analize list of scaling criterias";
    }

    grouping telemetry-delay {
      description
        "Base telemetry delay parameters";
      leaf one-way-delay {
        type uint32;
        units "microseconds";
        description
          "To specify average Delay in one (forward) direction
                during the measurement interval";
      }

      leaf two-way-delay {
        type uint32;
        units "microseconds";
        description
          "To specify average Delay in both (forward and reverse)
                 directions during the measurement interval";
      }

      leaf one-way-delay-min {
        type uint32;
        units "microseconds";
        description
          "To specify minimum Delay in one (forward) direction
                during the measurement interval";
      }

      leaf one-way-delay-max {
        type uint32;
        units "microseconds";
        description
          "To specify maximum Delay in one (forward) direction
                during the measurement interval";
      }

      leaf two-way-delay-min {
        type uint32;
        units "microseconds";
        description
          "To specify minimum Delay in both (forward and reverse)
                 directions during the measurement interval";
      }

      leaf two-way-delay-max {
        type uint32;
        units "microseconds";
        description
          "To specify maximum Delay in both (forward and reverse)
                 directions during the measurement interval";
      }
    }  // grouping telemetry-delay

    grouping telemetry-delay-variance {
      description
        "Base telemetry delay variance parameters";
      leaf one-way-delay-variation {
        type uint32;
        units "microseconds";
        description
          "To specify average Delay Variation in one (forward)
                direction during the measurement interval";
      }

      leaf two-way-delay-variation {
        type uint32;
        units "microseconds";
        description
          "To specify average Delay Variation in both
                 (forward and reverse) directions during the
                  measurement interval";
      }
    }  // grouping telemetry-delay-variance

    grouping telemetry-packet-loss {
      description
        "Base telemetry packet loss parameters";
      leaf one-way-packet-loss {
        type decimal64 {
          fraction-digits 4;
          range "0.0000..100.0000";
        }
        units "percent";
        description
          "To specify packet loss in one (forward) direction.";
      }

      leaf two-way-packet-loss {
        type decimal64 {
          fraction-digits 4;
          range "0.0000..100.0000";
        }
        units "percent";
        description
          "To specify packet loss in in both (forward and reverse)
                 directions";
      }
    }  // grouping telemetry-packet-loss

    grouping telemetry-bandwidth {
      description
        "Base telemetry bandwidth parameters";
      leaf utilized-bandwidth {
        type rt:bandwidth-ieee-float32;
        description
          "To specify utilized bandwidth over the specified source
                 and destination in bytes per seconds.";
        reference
          "RFC 3471";

      }

      leaf utilized-percentage {
        type decimal64 {
          fraction-digits 4;
          range "0.0000..100.0000";
        }
        units "percent";
        description
          "To indicate a percentage value for utilization";
      }
    }  // grouping telemetry-bandwidth

    grouping scaling-duration {
      description
        "Base scaling criteria durations";
      leaf threshold-time {
        type uint32;
        units "seconds";
        description
          "The duration for which the criteria must hold true";
      }

      leaf cooldown-time {
        type uint32;
        units "seconds";
        description
          "The duration after a scaling-in/scaling-out action has been
            triggered, for which there will be no further operation";
      }
    }  // grouping scaling-duration

    grouping scaling-criteria {
      description
        "Grouping for scaling criteria";
      leaf performance-type {
        type identityref {
          base telemetry-param-type;
        }
        description
          "Reference to the tunnel level telemetry type";
      }

      leaf te-telemetry-tunnel-ref {
        type leafref {
          path "/te:te/te:tunnels/te:tunnel/te:name";
        }
        description "Reference to tunnel";
      }
    }  // grouping scaling-criteria

    grouping scaling-intent {
      description "Basic sclaing intent";
      uses scaling-duration;

      leaf scale-in-operation-type {
        type scaling-criteria-operation;
        default 'AND';
        description
          "Operation to be applied to check between scaling criterias to
                check if the scale in threshold condition has been met.
                Defaults to AND";
      }

      leaf scale-out-operation-type {
        type scaling-criteria-operation;
        default 'OR';
        description
          "Operation to be applied to check between scaling criterias to
                check if the scale out threshold condition has been met.
                Defauls to OR";
      }

      list scaling-condition {
        key "performance-type";
        description "Scaling conditions";
        uses scaling-criteria;
      }  // list scaling-condition
    }  // grouping scaling-intent

    grouping telemetry-param {
      description
        "Base telemetry parameters";
      leaf id {
        type string;
        description "Id of telemetry param";
      }

      uses telemetry-delay;

      uses telemetry-delay-variance;

      uses telemetry-packet-loss;

      uses telemetry-bandwidth;

      leaf te-ref {
        type leafref {
          path "/te:te/te:tunnels/te:tunnel/te:name";
        }
        description
          "Reference to measured te tunnel";
      }
    }  // grouping telemetry-param

    augment /te:te/te:tunnels/te:tunnel/te:state {
      description
        "Augmentation parameters for state TE tunnel topologies.";
      container te-telemetry {
        description "telemetry params";
        uses telemetry-param;
      }  // container te-telemetry
    }

    augment /te:te/te:tunnels/te:tunnel {
      description
        "Augmentation parameters for config scaling-criteria
            TE tunnel topologies. Scale in/out criteria might be used
            for network autonomics in order the controller
            to react to a certain set of monitored params.";
      container te-scaling-intent {
        description "scaling intent";
        container scale-in-intent {
          description "scale-in";
          uses scaling-intent;
        }  // container scale-in-intent

        container scale-out-intent {
          description "scale-out";
          uses scaling-intent;
        }  // container scale-out-intent
      }  // container te-scaling-intent
    }
  }  // module ietf-te-kpi-telemetry

Summary

  
  
Organization IETF Traffic Engineering Architecture and Signaling (TEAS) Working Group
  
Module ietf-te-kpi-telemetry
Version 2017-10-25
File ietf-te-kpi-telemetry@2017-10-25.yang
  
Prefix te-tel
Namespace urn:ietf:params:xml:ns:yang:ietf-te-kpi-telemetry
  
Cooked /cookedmodules/ietf-te-kpi-telemetry/2017-10-25
YANG /src/ietf-te-kpi-telemetry@2017-10-25.yang
XSD /xsd/ietf-te-kpi-telemetry@2017-10-25.xsd
  
Abstract This module describes telemetry for teas tunnel model
  
Contact
Editor: Young Lee <leeyoung@huawei.com>
Editor: Dhruv Dhody <dhruv.ietf@gmail.com>
Editor: Ricard Vilalta <ricard.vilalta@cttc.es>
Editor: Satish Karunanithi <satish.karunanithi@gmail.com>

Description

 
This module describes telemetry for teas tunnel model

Typedefs

Typedef Base type Abstract
scaling-criteria-operation enumeration Operations to analize list of scaling criterias

Groupings

Grouping Objects Abstract
scaling-criteria performance-type te-telemetry-tunnel-ref Grouping for scaling criteria
scaling-duration threshold-time cooldown-time Base scaling criteria durations
scaling-intent threshold-time cooldown-timescale-in-operation-type scale-out-operation-type scaling-condition Basic sclaing intent
telemetry-bandwidth utilized-bandwidth utilized-percentage Base telemetry bandwidth parameters
telemetry-delay one-way-delay two-way-delay one-way-delay-min one-way-delay-max two-way-delay-min two-way-delay-max Base telemetry delay parameters
telemetry-delay-variance one-way-delay-variation two-way-delay-variation Base telemetry delay variance parameters
telemetry-packet-loss one-way-packet-loss two-way-packet-loss Base telemetry packet loss parameters
telemetry-param id one-way-delay two-way-delay one-way-delay-min one-way-delay-max two-way-delay-min two-way-delay-maxone-way-delay-variation two-way-delay-variationone-way-packet-loss two-way-packet-lossutilized-bandwidth utilized-percentagete-ref Base telemetry parameters