Cisco-IOS-XR-asr9k-qos-oper-sub2

This submodule contains a collection of YANG definitions for Cisco IOS-XR asr9k-qos package operational data. Copyright (c) 201...

  • Version: 2021-04-09

    Cisco-IOS-XR-asr9k-qos-oper-sub2@2021-04-09


    
      submodule Cisco-IOS-XR-asr9k-qos-oper-sub2 {
    
        yang-version 1;
    
        belongs-to Cisco-IOS-XR-asr9k-qos-oper {
            prefix Cisco-IOS-XR-asr9k-qos-oper;
        }
    
        import cisco-semver {
          prefix semver;
        }
    
        organization "Cisco Systems, Inc.";
    
        contact
          "Cisco Systems, Inc.
         Customer Service
         
         Postal: 170 West Tasman Drive
         San Jose, CA 95134
         
         Tel: +1 800 553-NETS
         
         E-mail: cs-yang@cisco.com";
    
        description
          "This submodule contains a collection of YANG definitions
         for Cisco IOS-XR asr9k-qos package operational data.
         
         Copyright (c) 2013-2021 by Cisco Systems, Inc.
         All rights reserved.";
    
        revision "2021-04-09" {
          description
            "pi changes to support wred drop probability";
        }
    
        revision "2020-12-23" {
          description
            "Introduced an CLI to show qos performance stats";
        }
    
        revision "2019-09-30" {
          description
            "YANG support for PWHE interface";
        }
    
        revision "2019-04-05" {
          description
            "Establish semantic version baseline.";
        }
    
        revision "2015-11-09" {
          description "IOS XR 6.0 revision.";
        }
    
        semver:module-version "1.0.0";
    
        typedef Shape-profiletype-v2 {
          type enumeration {
            enum "invalid" {
              value 0;
              description
                "Shape Profile Type Invalid";
            }
            enum "always" {
              value 1;
              description
                "Shape Profile Type Always";
            }
            enum "never" {
              value 2;
              description
                "Shape Profile Type Never";
            }
            enum "explicit" {
              value 3;
              description
                "Shape Profile Type Explicit";
            }
            enum "scale" {
              value 4;
              description
                "Shape Profile Type Scale";
            }
            enum "grid" {
              value 5;
              description
                "Shape Profile Type Grid";
            }
          }
          description "SHAPE profile type";
        }
    
        typedef Action {
          type enumeration {
            enum "police-transmit" {
              value 0;
              description
                "Police action transmit";
            }
            enum "police-set-transmit" {
              value 1;
              description
                "Police action set transmit";
            }
            enum "police-drop" {
              value 2;
              description "Police action drop";
            }
            enum "police-unknown" {
              value 3;
              description
                "Police action unknown";
            }
          }
          description "Action type";
        }
    
        typedef Action-opcode {
          type enumeration {
            enum "precedence" {
              value 0;
              description "Precedence";
            }
            enum "dscp" {
              value 1;
              description "DSCP";
            }
            enum "discard-class" {
              value 2;
              description "Discard class";
            }
            enum "qos-group" {
              value 3;
              description "QoS group";
            }
            enum "cos-inner" {
              value 4;
              description "COS inner";
            }
            enum "cos" {
              value 5;
              description "COS";
            }
            enum "exp-top" {
              value 6;
              description "EXP top";
            }
            enum "exp-imp" {
              value 7;
              description "EXP IMP";
            }
            enum "tunnel-precedence" {
              value 8;
              description "Tunnel precedence";
            }
            enum "tunnel-dscp" {
              value 9;
              description "Tunnel DSCP";
            }
            enum "itag-dei" {
              value 10;
              description "ITAG DEI";
            }
            enum "itag-cos" {
              value 11;
              description "ITAG COS";
            }
            enum "cos-imposition" {
              value 12;
              description "COS imposition";
            }
            enum "dei-imposition" {
              value 13;
              description "DEI imposition";
            }
            enum "dei" {
              value 14;
              description "DEI";
            }
            enum "no-marking" {
              value 15;
              description "No marking";
            }
          }
          description "Action opcode";
        }
    
        typedef Wred {
          type enumeration {
            enum "wred-cos" {
              value 0;
              description "WRED based on COS";
            }
            enum "wred-dscp" {
              value 1;
              description "WRED based on DSCP";
            }
            enum "wred-precedence" {
              value 2;
              description
                "WRED based on Precedence";
            }
            enum "wred-discard-class" {
              value 3;
              description
                "WRED based on discard class";
            }
            enum "wred-mpls-exp" {
              value 4;
              description
                "WRED based on MPLS EXP";
            }
            enum "red-with-user-min-max" {
              value 5;
              description
                "RED with user defined min and max";
            }
            enum "red-with-default-min-max" {
              value 6;
              description
                "RED with default min and max";
            }
            enum "wred-dei" {
              value 7;
              description "WRED DEI";
            }
          }
          description "WRED type";
        }
    
        typedef Tb-algorithm {
          type enumeration {
            enum "inactive" {
              value 0;
              description
                "Inactive, configured but disabled";
            }
            enum "single" {
              value 1;
              description "Single token bucket";
            }
            enum "single-rate-tcm" {
              value 2;
              description
                "Single rate three color marker";
            }
            enum "two-rate-tcm" {
              value 3;
              description
                "Two rate three color marker";
            }
            enum "mef-tcm" {
              value 4;
              description
                "Allows coupling between CIR and PIR tb's";
            }
            enum "dummy" {
              value 5;
              description
                "Internal dummy token bucket for coupled-policer
               child";
            }
          }
          description "Tokenbucket type";
        }
    
        typedef Queue {
          type enumeration {
            enum "port-default" {
              value 0;
              description "Port default queue";
            }
            enum "class-default" {
              value 1;
              description
                "The default queue in this policy";
            }
            enum "priority1-queue" {
              value 2;
              description
                "Create the priority 1 queue in the level which
               will be shared by other p1 classes";
            }
            enum "priority2-queue" {
              value 3;
              description
                "Create the priority 2 queue in the level, which
               will be shared by other p2 classes";
            }
            enum "priority3-queue" {
              value 4;
              description
                "Create the priority 3 queue in the level, which
               will be shared by other p3 classes";
            }
            enum "priority4-queue" {
              value 5;
              description
                "Create the priority 4 queue in the level, which
               will be shared by other p4 classes";
            }
            enum "priority5-queue" {
              value 6;
              description
                "Create the priority 5 queue in the level, which
               will be shared by other p5 classes";
            }
            enum "priority6-queue" {
              value 7;
              description
                "Create the priority 6 queue in the level, which
               will be shared by other p6 classes";
            }
            enum "priority7-queue" {
              value 8;
              description
                "Create the priority 7 queue in the level, which
               will be shared by other p7 classes";
            }
            enum "first-p1-class-name" {
              value 9;
              description
                "Current level's priority 1 queue";
            }
            enum "first-p2-class-name" {
              value 10;
              description
                "Current level's priority 2 queue";
            }
            enum "first-p3-class-name" {
              value 11;
              description
                "Current level's priority 3 queue";
            }
            enum "first-p4-class-name" {
              value 12;
              description
                "Current level's priority 4 queue";
            }
            enum "first-p5-class-name" {
              value 13;
              description
                "Current level's priority 5 queue";
            }
            enum "first-p6-class-name" {
              value 14;
              description
                "Current level's priority 6 queue";
            }
            enum "first-p7-class-name" {
              value 15;
              description
                "Current level's priority 7 queue";
            }
            enum "port-priority1" {
              value 16;
              description
                "Port priority 1 queue";
            }
            enum "port-priority2" {
              value 17;
              description
                "Port priority 2 queue";
            }
            enum "port-priority3" {
              value 18;
              description
                "Port priority 3 queue";
            }
            enum "port-priority4" {
              value 19;
              description
                "Port priority 4 queue";
            }
            enum "port-priority5" {
              value 20;
              description
                "Port priority 5 queue";
            }
            enum "port-priority6" {
              value 21;
              description
                "Port priority 6 queue";
            }
            enum "port-priority7" {
              value 22;
              description
                "Port priority 7 queue";
            }
            enum "new" {
              value 23;
              description
                "Create a new queue for this class";
            }
            enum "parent-class" {
              value 24;
              description "Under parent queue";
            }
            enum "priority1" {
              value 25;
              description "Priority 1";
            }
            enum "priority2" {
              value 26;
              description "Priority 2";
            }
            enum "priority3" {
              value 27;
              description "Priority 3";
            }
            enum "priority4" {
              value 28;
              description "Priority 4";
            }
            enum "priority5" {
              value 29;
              description "Priority 5";
            }
            enum "priority6" {
              value 30;
              description "Priority 6";
            }
            enum "priority7" {
              value 31;
              description "Priority 7";
            }
            enum "priority-ignored-normal" {
              value 32;
              description
                "Priority ignored level";
            }
            enum "normal-priority" {
              value 33;
              description "Normal priority";
            }
            enum "class-unknown" {
              value 34;
              description "Class unknown";
            }
            enum "unknown-priority" {
              value 35;
              description "Unknown priority";
            }
          }
          description "Queue type";
        }
    
        typedef Qos-unit {
          type enumeration {
            enum "invalid" {
              value 0;
              description "Invalid type";
            }
            enum "bytes" {
              value 1;
              description "Bytes";
            }
            enum "kilobytes" {
              value 2;
              description "Kilobytes";
            }
            enum "megabytes" {
              value 3;
              description "Megabytes";
            }
            enum "gigabytes" {
              value 4;
              description "Gigabytes";
            }
            enum "bps" {
              value 5;
              description "Bits per second";
            }
            enum "kbps" {
              value 6;
              description "Kilo bits per second";
            }
            enum "mbps" {
              value 7;
              description "Mega bits per second";
            }
            enum "gbps" {
              value 8;
              description "Giga bits per second";
            }
            enum "cells-per-second" {
              value 9;
              description "Cells per second";
            }
            enum "packets-per-second" {
              value 10;
              description "Packets per second";
            }
            enum "microsecond" {
              value 11;
              description "Microsecond";
            }
            enum "millisecond" {
              value 12;
              description "Millisecond";
            }
            enum "packets" {
              value 13;
              description "Number of packets";
            }
            enum "cells" {
              value 14;
              description "Number of cells";
            }
            enum "percentage" {
              value 15;
              description "Percentage";
            }
            enum "ratio" {
              value 16;
              description "Ratio";
            }
          }
          description "QoS parameter unit";
        }
    
        grouping QOS-SHOW-EA-PROFILE-ST {
          description "QoS profile structure";
          leaf total-time {
            type uint64;
            description "Total Time";
          }
    
          leaf total-count {
            type uint64;
            description "Total count";
          }
    
          leaf time-highest {
            type string {
              length "0..11";
            }
            description "Time Highest";
          }
    
          leaf time-lowest {
            type string {
              length "0..11";
            }
            description "Time Lowest";
          }
    
          leaf total-events {
            type uint64;
            description "Total Events";
          }
        }  // grouping QOS-SHOW-EA-PROFILE-ST
    
        grouping QOS-EA-PERF-STATS {
          description "QoS perf stats";
          container profile-data {
            description "Profiling Data";
            uses QOS-SHOW-EA-PROFILE-ST;
          }  // container profile-data
        }  // grouping QOS-EA-PERF-STATS
    
        grouping WRED-CURVE-PARAMS-V2 {
          description
            "Typhoon WRED curve parameters";
          container min-threshold {
            description "Minimum threshold";
            uses QOS-PARAM;
          }  // container min-threshold
    
          container min-threshold-user-config {
            description
              "Minimum threshold WRED context";
            uses QOS-PARAM;
          }  // container min-threshold-user-config
    
          container max-threshold {
            description "Maximum threshold";
            uses QOS-PARAM;
          }  // container max-threshold
    
          container max-threshold-user-config {
            description
              "Maximum threshold WRED context";
            uses QOS-PARAM;
          }  // container max-threshold-user-config
    
          leaf absolute-index {
            type uint16;
            description "Absolute Index";
          }
    
          leaf template-id {
            type uint16;
            description "Template ID";
          }
    
          leaf curve-id {
            type uint16;
            description "Curve ID";
          }
    
          leaf match {
            type string;
            description
              "WRED match if precedence start value equals to
             end value Format: <start-value> , else range
             Format: <start-value> <end-value>";
          }
    
          leaf exp-match {
            type string;
            description
              "WRED exp match if EXP start value equals to end
             value Format: <start-value> , else range Format:
             <start-value> <end-value>";
          }
        }  // grouping WRED-CURVE-PARAMS-V2
    
        grouping WRED-PARAMS-V2 {
          description "Typhoon WRED parameters";
          leaf type {
            type Wred;
            description "WRED type";
          }
    
          leaf curve-xr {
            type uint16;
            description "Number of curves";
          }
    
          list curve {
            max-elements 64;
            description "Curve details";
            uses WRED-CURVE-PARAMS-V2;
          }  // list curve
        }  // grouping WRED-PARAMS-V2
    
        grouping PIR-SHAPE-PARAMS-V2 {
          description "PIR Shape Params";
          container pir {
            description "PIR in kbps";
            uses QOS-PARAM;
          }  // container pir
    
          container pbs {
            description "PBS in bytes";
            uses QOS-PARAM;
          }  // container pbs
    
          leaf chunk-id {
            type uint32;
            description "Shape Chunk ID";
          }
    
          leaf profile-id {
            type uint16;
            description "Shape profile ID";
          }
    
          leaf scale-factor {
            type uint16;
            description "Scale Factor";
          }
        }  // grouping PIR-SHAPE-PARAMS-V2
    
        grouping CIR-SHAPE-PARAMS-V2 {
          description "CIR Shape Params";
          container cir {
            description "CIR in kbps";
            uses QOS-PARAM;
          }  // container cir
    
          container config-bandwidth {
            description "Config bandwidth";
            uses SHAPE-USER-CFG-BW;
          }  // container config-bandwidth
    
          container cbs {
            description "CBS in bytes";
            uses QOS-PARAM;
          }  // container cbs
    
          leaf chunk-id {
            type uint32;
            description "Shape Chunk ID";
          }
    
          leaf profile-id {
            type uint16;
            description "Shape profile ID";
          }
    
          leaf scale-factor {
            type uint16;
            description "Scale Factor";
          }
        }  // grouping CIR-SHAPE-PARAMS-V2
    
        grouping SHAPER-PARAMS-V2 {
          description "Shaper parameters";
          container cir-shape {
            description "CIR shaper params";
            uses CIR-SHAPE-PARAMS-V2;
          }  // container cir-shape
    
          container pir-shape {
            description "PIR shaper params";
            uses PIR-SHAPE-PARAMS-V2;
          }  // container pir-shape
    
          leaf cir-shape-type {
            type Shape-profiletype-v2;
            description "CIR Shaper type";
          }
    
          leaf pir-shape-type {
            type Shape-profiletype-v2;
            description "PIR Shaper type";
          }
        }  // grouping SHAPER-PARAMS-V2
    
        grouping QUEUE-LIMIT-PARAMS-V2 {
          description "Queue limit parameters";
          container queue-limit {
            description "Queue limit in kbytes";
            uses QOS-PARAM;
          }  // container queue-limit
    
          container config-queue-limit {
            description "Config queue limit";
            uses QOS-PARAM;
          }  // container config-queue-limit
    
          leaf absolute-index {
            type uint16;
            description "Absolute Index";
          }
    
          leaf template-id {
            type uint16;
            description "Template ID";
          }
    
          leaf curve-id {
            type uint16;
            description "Curve ID";
          }
        }  // grouping QUEUE-LIMIT-PARAMS-V2
    
        grouping QOS-SHOW-EA-ST-V2 {
          description "QoS policy";
          list qos-show-ea-st-v2 {
            description "qos show ea st v2";
            container queue {
              description "Queue parameters";
              uses QUEUE-PARAMS;
            }  // container queue
    
            container queue-limit-parameters {
              description
                "Queue limit parameters";
              uses QUEUE-LIMIT-PARAMS-V2;
            }  // container queue-limit-parameters
    
            container shape {
              description "Shape parameters";
              uses SHAPER-PARAMS-V2;
            }  // container shape
    
            container police {
              description "Police parameters";
              uses POLICE-PARAMS;
            }  // container police
    
            container wfq {
              description "WFQ parameters";
              uses WFQ-PARAMS;
            }  // container wfq
    
            container wred {
              description "WRED parameters";
              uses WRED-PARAMS-V2;
            }  // container wred
    
            container mark {
              description "Mark parameters";
              uses CLASS-MARK-ACTIONS;
            }  // container mark
    
            leaf class-level {
              type uint8;
              description "Class level";
            }
    
            leaf class-name {
              type string {
                length "0..65";
              }
              description "Class name";
            }
    
            leaf policy-name {
              type string {
                length "0..65";
              }
              description "Policy name";
            }
    
            leaf parent-policy-name {
              type string {
                length "0..65";
              }
              description "Parent policy name";
            }
    
            leaf parent-class-name {
              type string {
                length "0..65";
              }
              description "Parent class name";
            }
          }  // list qos-show-ea-st-v2
        }  // grouping QOS-SHOW-EA-ST-V2
    
        grouping MARK-ACTION {
          description "Marking parameters";
          leaf mark-value {
            type uint8;
            description "Mark value";
          }
    
          leaf action-opcode {
            type Action-opcode;
            description "Action opcode";
          }
        }  // grouping MARK-ACTION
    
        grouping MARK-ACTION-PER-CATEGORY {
          description "Marking action";
          leaf action-type {
            type Action;
            description "Action type";
          }
    
          list mark-detail {
            max-elements 2;
            description "Mark value";
            uses MARK-ACTION;
          }  // list mark-detail
        }  // grouping MARK-ACTION-PER-CATEGORY
    
        grouping CLASS-MARK-ACTIONS {
          description "Mark parameters";
          container child-mark {
            description "Child mark only";
            uses MARK-ACTION-PER-CATEGORY;
          }  // container child-mark
    
          container police-conform {
            description
              "Child police conform mark";
            uses MARK-ACTION-PER-CATEGORY;
          }  // container police-conform
    
          container police-exceed {
            description
              "Child police exceed mark";
            uses MARK-ACTION-PER-CATEGORY;
          }  // container police-exceed
    
          container police-violate {
            description
              "Child police violate mark";
            uses MARK-ACTION-PER-CATEGORY;
          }  // container police-violate
    
          container parent-mark {
            description "Parent mark only";
            uses MARK-ACTION-PER-CATEGORY;
          }  // container parent-mark
    
          container parent-police-conform {
            description
              "Parent police conform mark";
            uses MARK-ACTION-PER-CATEGORY;
          }  // container parent-police-conform
    
          container parent-police-exceed {
            description
              "Parent police exceed mark";
            uses MARK-ACTION-PER-CATEGORY;
          }  // container parent-police-exceed
    
          container parent-police-violate {
            description
              "Parent police violate mark";
            uses MARK-ACTION-PER-CATEGORY;
          }  // container parent-police-violate
        }  // grouping CLASS-MARK-ACTIONS
    
        grouping WRED-CURVE-PARAMS-V1 {
          description
            "Trident WRED curve parameters";
          container min-threshold {
            description "Minimum threshold";
            uses QOS-PARAM;
          }  // container min-threshold
    
          container min-threshold-user-config {
            description
              "Minimum threshold WRED context";
            uses QOS-PARAM;
          }  // container min-threshold-user-config
    
          container max-threshold {
            description "Maximum threshold";
            uses QOS-PARAM;
          }  // container max-threshold
    
          container max-threshold-user-config {
            description
              "Maximum threshold WRED context";
            uses QOS-PARAM;
          }  // container max-threshold-user-config
    
          leaf match {
            type string;
            description
              "WRED precedence match if precedence start value
             equals to end value Format: <start-value> , else
             range Format: <start-value> <end-value>";
          }
        }  // grouping WRED-CURVE-PARAMS-V1
    
        grouping WRED-PARAMS-V1 {
          description "Trident WRED parameters";
          leaf type {
            type Wred;
            description "WRED type";
          }
    
          leaf curve-xr {
            type uint16;
            description "Number of curves";
          }
    
          leaf table-id {
            type uint8;
            description "Table ID";
          }
    
          leaf profile-id {
            type uint32;
            description "Profile ID";
          }
    
          leaf scaling-profile-id {
            type uint32;
            description "Scaling profile ID";
          }
    
          list curve {
            max-elements 64;
            description "Curve details";
            uses WRED-CURVE-PARAMS-V1;
          }  // list curve
        }  // grouping WRED-PARAMS-V1
    
        grouping WFQ-PARAMS {
          description "WFQ parameters";
          container parent-bandwidth {
            description "Parent bandwidth";
            uses QOS-PARAM;
          }  // container parent-bandwidth
    
          container bandwidth {
            description "CFG Bandwidth";
            uses QOS-PARAM;
          }  // container bandwidth
    
          leaf profile-id {
            type uint32;
            description "WFQ profile";
          }
    
          leaf committed-weight {
            type uint32;
            description "Committed weight";
          }
    
          leaf excess-weight {
            type uint16;
            description "Excess weight";
          }
    
          leaf excess-ratio {
            type uint16;
            description "Parent Excess ratio";
          }
    
          leaf chunk-id {
            type uint32;
            description "Chunk ID";
          }
    
          leaf level {
            type uint8;
            description "Level";
          }
        }  // grouping WFQ-PARAMS
    
        grouping CFG-POLICE {
          description "Config police parameters";
          container average-rate {
            description "Average rate";
            uses QOS-PARAM;
          }  // container average-rate
    
          container peak-rate {
            description "Peak rate";
            uses QOS-PARAM;
          }  // container peak-rate
    
          container conform-burst {
            description "Conform burst";
            uses QOS-PARAM;
          }  // container conform-burst
    
          container exceed-burst {
            description "Exceed burst";
            uses QOS-PARAM;
          }  // container exceed-burst
        }  // grouping CFG-POLICE
    
        grouping POLICE-PARAMS {
          description "Police parameters";
          container cir {
            description "CIR";
            uses QOS-PARAM;
          }  // container cir
    
          container cbs {
            description "CBS";
            uses QOS-PARAM;
          }  // container cbs
    
          container pir {
            description "PIR";
            uses QOS-PARAM;
          }  // container pir
    
          container pbs {
            description "PBS";
            uses QOS-PARAM;
          }  // container pbs
    
          container police-config-parameters {
            description
              "Police config parameters";
            uses CFG-POLICE;
          }  // container police-config-parameters
    
          leaf policer-type {
            type Tb-algorithm;
            description "Policer type";
          }
    
          leaf profile-id {
            type uint32;
            description "Police profile ID";
          }
        }  // grouping POLICE-PARAMS
    
        grouping SHAPE-USER-CFG-BW {
          description
            "Config bandwidth parameters";
          container minimum-rate {
            description "Minimum bandwidth rate";
            uses QOS-PARAM;
          }  // container minimum-rate
        }  // grouping SHAPE-USER-CFG-BW
    
        grouping SHAPER-PARAMS-V1 {
          description "Shaper parameters";
          container cir {
            description "CIR in kbps";
            uses QOS-PARAM;
          }  // container cir
    
          container config-bandwidth {
            description "Config bandwidth";
            uses SHAPE-USER-CFG-BW;
          }  // container config-bandwidth
    
          container cbs {
            description "CBS in bytes";
            uses QOS-PARAM;
          }  // container cbs
    
          container pir {
            description "PIR in kbps";
            uses QOS-PARAM;
          }  // container pir
    
          container pbs {
            description "PBS in bytes";
            uses QOS-PARAM;
          }  // container pbs
    
          leaf profile-id {
            type uint16;
            description "Shape profile ID";
          }
        }  // grouping SHAPER-PARAMS-V1
    
        grouping QUEUE-LIMIT-PARAMS-V1 {
          description "Queue limit parameters";
          container queue-limit {
            description "Queue limit in kbytes";
            uses QOS-PARAM;
          }  // container queue-limit
    
          container config-queue-limit {
            description "Config queue limit";
            uses QOS-PARAM;
          }  // container config-queue-limit
    
          leaf profile-id {
            type uint32;
            description "Profile ID";
          }
    
          leaf scaling-profile-id {
            type uint32;
            description "Scaling profile ID";
          }
        }  // grouping QUEUE-LIMIT-PARAMS-V1
    
        grouping QUEUE-PARAMS {
          description "Queue parameters";
          leaf queue-id {
            type uint32;
            description "Queue ID";
          }
    
          leaf queue-type {
            type Queue;
            description "Queue type";
          }
    
          leaf class-name {
            type string {
              length "0..65";
            }
            description "Class name";
          }
        }  // grouping QUEUE-PARAMS
    
        grouping QOS-SHOW-EA-ST-V1 {
          description "QoS policy";
          list qos-show-ea-st-v1 {
            description "qos show ea st v1";
            container queue {
              description "Queue parameters";
              uses QUEUE-PARAMS;
            }  // container queue
    
            container queue-limit-parameters {
              description
                "Queue limit parameters";
              uses QUEUE-LIMIT-PARAMS-V1;
            }  // container queue-limit-parameters
    
            container shape {
              description "Shape parameters";
              uses SHAPER-PARAMS-V1;
            }  // container shape
    
            container police {
              description "Police parameters";
              uses POLICE-PARAMS;
            }  // container police
    
            container wfq {
              description "WFQ parameters";
              uses WFQ-PARAMS;
            }  // container wfq
    
            container wred {
              description "WRED parameters";
              uses WRED-PARAMS-V1;
            }  // container wred
    
            container mark {
              description "Mark parameters";
              uses CLASS-MARK-ACTIONS;
            }  // container mark
    
            leaf class-level {
              type uint8;
              description "Class level";
            }
    
            leaf class-name {
              type string {
                length "0..65";
              }
              description "Class name";
            }
    
            leaf policy-name {
              type string {
                length "0..65";
              }
              description "Policy name";
            }
    
            leaf parent-policy-name {
              type string {
                length "0..65";
              }
              description "Parent policy name";
            }
    
            leaf parent-class-name {
              type string {
                length "0..65";
              }
              description "Parent class name";
            }
          }  // list qos-show-ea-st-v1
        }  // grouping QOS-SHOW-EA-ST-V1
    
        grouping QOS-PARAM {
          description "Config details";
          leaf value {
            type uint32;
            description "Config value";
          }
    
          leaf unit {
            type Qos-unit;
            description "Config unit";
          }
        }  // grouping QOS-PARAM
    
        grouping INTF-CONFIG-PROGRAMED {
          description
            "Interface configured and programmed parameters";
          container port-config-bandwidth {
            description
              "Bandwidth due to port speed change";
            uses QOS-PARAM;
          }  // container port-config-bandwidth
    
          container ancp-config-bandwidth {
            description
              "Bandwidth obtain from IM";
            uses QOS-PARAM;
          }  // container ancp-config-bandwidth
    
          container ancp-programmed-bandwidth {
            description
              "ANCP bandwidth that was programmed";
            uses QOS-PARAM;
          }  // container ancp-programmed-bandwidth
    
          container port-shaper-rate {
            description
              "Bandwidth that was programmed";
            uses QOS-PARAM;
          }  // container port-shaper-rate
        }  // grouping INTF-CONFIG-PROGRAMED
    
        grouping QOS-SHOW-EA-HEADER-ST {
          description "QoS policy header";
          container interface-parameters {
            description
              "Interface config and programmed parameters";
            uses INTF-CONFIG-PROGRAMED;
          }  // container interface-parameters
    
          container programmed-bandwidth {
            description
              "Bandwidth that was programmed";
            uses QOS-PARAM;
          }  // container programmed-bandwidth
    
          leaf classes {
            type uint16;
            description "Number of classes";
          }
    
          leaf policy-name {
            type string {
              length "0..65";
            }
            description "Policy name";
          }
        }  // grouping QOS-SHOW-EA-HEADER-ST
    
        grouping QOS-SHOW-EA-POLICY {
          description "QoS policy";
          container header {
            description "QoS policy header";
            uses QOS-SHOW-EA-HEADER-ST;
          }  // container header
    
          container policy {
            description
              "Trident QoS policy details";
            uses QOS-SHOW-EA-ST-V1;
          }  // container policy
    
          container policy-typhoon {
            description
              "Typhoon QoS policy details";
            uses QOS-SHOW-EA-ST-V2;
          }  // container policy-typhoon
        }  // grouping QOS-SHOW-EA-POLICY
    
        grouping QOS-EA-CAPABILITY {
          description "QoS capability";
          leaf max-policy-maps {
            type uint32;
            description
              "Maximum policy maps per system";
          }
    
          leaf max-policy-hierarchy {
            type uint32;
            description
              "Maximum policy hierarchy";
          }
    
          leaf max-policy-name-length {
            type uint32;
            description
              "Maximum policy name length";
          }
    
          leaf max-classes-per-child-policy {
            type uint32;
            description
              "Maximum classes per child policy";
          }
    
          leaf max-classes-per-policy {
            type uint32;
            description
              "Maximum classes per policy";
          }
    
          leaf max-classes-per-grand-parent-policy {
            type uint32;
            description
              "Maximum classes per parent policy";
          }
    
          leaf max-police-actions-per-class {
            type uint32;
            description
              "Maximum police actions per class";
          }
    
          leaf max-marking-actions-per-class {
            type uint32;
            description
              "Maximum marking action  per class";
          }
    
          leaf max-matches-per-class {
            type uint32;
            description
              "Maximum matches per class";
          }
    
          leaf max-classmap-name-length {
            type uint32;
            description
              "Maximum classmap name length";
          }
    
          leaf max-bundle-members {
            type uint32;
            description "Maximum bundle members";
          }
    
          leaf max-instance-name-length {
            type uint32;
            description
              "Maximum instance name length";
          }
        }  // grouping QOS-EA-CAPABILITY
      }  // submodule Cisco-IOS-XR-asr9k-qos-oper-sub2
    

© 2023 YumaWorks, Inc. All rights reserved.