Cisco-IOS-XR-qos-ma-cfg

This module contains a collection of YANG definitions for Cisco IOS-XR qos package configuration. This module contains definiti...

  • Version: 2020-03-10

    Cisco-IOS-XR-qos-ma-cfg@2020-03-10


    
      module Cisco-IOS-XR-qos-ma-cfg {
    
        yang-version 1;
    
        namespace
          "http://cisco.com/ns/yang/Cisco-IOS-XR-qos-ma-cfg";
    
        prefix qos-ma-cfg;
    
        import cisco-semver {
          prefix semver;
        }
        import Cisco-IOS-XR-types {
          prefix xr;
        }
        import Cisco-IOS-XR-ifmgr-cfg {
          prefix a1;
        }
        import Cisco-IOS-XR-l2vpn-cfg {
          prefix a2;
        }
    
        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 module contains a collection of YANG definitions
         for Cisco IOS-XR qos package configuration.
         
         This module contains definitions
         for the following management objects:
           qos: Global QOS configuration.
         
         This YANG module augments the
           Cisco-IOS-XR-ifmgr-cfg,
           Cisco-IOS-XR-l2vpn-cfg,
         modules with configuration data.
         
         Copyright (c) 2013-2020 by Cisco Systems, Inc.
         All rights reserved.";
    
        revision "2020-03-10" {
          description "IOS XR 7.2.1 revision.";
        }
    
        revision "2019-04-05" {
          description
            "Establish semantic version baseline.";
        }
    
        revision "2018-02-27" {
          description
            "Made subscriber-parent a presence container, changed
           as part of commit check feature";
        }
    
        revision "2017-05-01" {
          description
            "Fixing backward compatibility error in module.";
        }
    
        revision "2016-12-23" {
          description "IOS XR 6.2.1 revision.";
        }
    
        revision "2016-12-15" {
          description "IOS XR 6.2.1 revision.";
        }
    
        revision "2016-11-11" {
          description "IOS XR 6.2.1 revision.";
        }
    
        revision "2016-03-03" {
          description "IOS XR 6.1.1 revision.";
        }
    
        semver:module-version "1.0.0";
    
        typedef Qos-field-not-supported {
          type enumeration {
            enum "not-supported" {
              value 0;
              description
                "Dummy data type. Leave unspecified";
            }
          }
          description
            "This field is used to specify the unsupported Qos values";
        }
    
        typedef Qos-policy-account {
          type enumeration {
            enum "layer1" {
              value 8;
              description
                "Turn on Layer 1 accounting";
            }
            enum "layer2" {
              value 1;
              description
                "Turn on Layer 2 accounting";
            }
            enum "nolayer2" {
              value 2;
              description
                "Turn on Layer 2 accounting";
            }
            enum "user-defined" {
              value 4;
              description
                "User defined accounting";
            }
          }
          description
            "This field is used to specify the type of Layer specific or user
           defined Qos accounting.";
        }
    
        grouping QOS {
          description
            "Common node of interface-configuration, cac, pvp,
           pac, pvc, pvc-mode, nv-satellite-access,
           nv-satellite-fabric-link, satellites";
          container qos {
            description
              "Interface QOS configuration";
            container output {
              description
                "Egress service policy";
              uses SERVICE-POLICY;
            }  // container output
    
            container input {
              description
                "Ingress service policy";
              uses SERVICE-POLICY;
            }  // container input
          }  // container qos
        }  // grouping QOS
    
        grouping SERVICE-POLICY {
          description
            "Common node of input, output";
          list service-policy {
            key "service-policy-name";
            description "Service policy details";
            leaf service-policy-name {
              type string {
                length "0..64";
              }
              description "Name of policy-map";
            }
    
            leaf account-type {
              type Qos-policy-account;
              description
                "Turn off L2 or L3 accounting.";
            }
    
            leaf l1-user-defined {
              type int32 {
                range "-63..63";
              }
              description "User specified value";
            }
    
            leaf spi-name {
              type string {
                length "0..32";
              }
              description "Name of the SPI";
            }
    
            leaf subscriber-parent-policy {
              type boolean;
              description
                "TRUE if service-policy applied on svlan.";
            }
    
            leaf resource-id {
              type uint32 {
                range "0..3";
              }
              description "Resource ID value";
            }
    
            leaf service-fragment-parent-policy {
              type boolean;
              description
                "TRUE if service-policy applied is a
                 service-fragment policy).";
            }
          }  // list service-policy
    
          list service-policy-qos {
            key "service-policy-name";
            description "Service policy details";
            container subscriber-group-names {
              description
                "Subscriber Group Name Details";
              list subscriber-group-name {
                key "subscriber-group-string";
                description
                  "Subscriber Group details";
                leaf subscriber-group-string {
                  type string {
                    length "0..64";
                  }
                  description
                    "Name of policy-map";
                }
    
                leaf account-type {
                  type Qos-policy-account;
                  description
                    "Turn off L2 or L3 accounting.";
                }
    
                leaf l1-user-defined {
                  type int32 {
                    range "-63..63";
                  }
                  description
                    "User specified value";
                }
    
                leaf spi-name {
                  type string {
                    length "0..32";
                  }
                  description "Name of the SPI";
                }
    
                leaf policy-merge {
                  type Qos-field-not-supported;
                  description
                    "Not supported (Leave unspecified).";
                }
    
                leaf subscriber-parent-policy {
                  type boolean;
                  description
                    "TRUE if service-policy applied on svlan.";
                }
    
                leaf resource-id {
                  type uint32 {
                    range "0..3";
                  }
                  description
                    "Resource ID value";
                }
    
                leaf service-fragment-parent-policy {
                  type boolean;
                  description
                    "TRUE if service-policy applied is a
                   service-fragment policy).";
                }
              }  // list subscriber-group-name
            }  // container subscriber-group-names
    
            container subscriber-parent {
              presence
                "Enable feature subscriber-parent";
              description
                "Subscriber Parent Details";
              leaf account-type {
                type Qos-policy-account;
                description
                  "Turn off L2 or L3 accounting.";
              }
    
              leaf l1-user-defined {
                type int32 {
                  range "-63..63";
                }
                description
                  "User specified value";
              }
    
              leaf spi-name {
                type string {
                  length "0..32";
                }
                description "Name of the SPI";
              }
    
              leaf policy-merge {
                type Qos-field-not-supported;
                description
                  "Not supported (Leave unspecified).";
              }
    
              leaf subscriber-parent-policy {
                type boolean;
                description
                  "TRUE if service-policy applied on svlan.";
              }
    
              leaf resource-id {
                type uint32 {
                  range "0..3";
                }
                description "Resource ID value";
              }
    
              leaf service-fragment-parent-policy {
                type boolean;
                description
                  "TRUE if service-policy applied is a
                 service-fragment policy).";
              }
            }  // container subscriber-parent
    
            leaf service-policy-name {
              type string {
                length "0..64";
              }
              description "Name of policy-map";
            }
          }  // list service-policy-qos
        }  // grouping SERVICE-POLICY
    
        augment /a1:interface-configurations/a1:interface-configuration/a2:l2-transport {
          description
            "This augment extends the configuration data of
           'Cisco-IOS-XR-l2vpn-cfg'";
          container pac {
            description
              "Port Attachment Circuit configuration.";
            uses QOS;
          }  // container pac
        }
    
        augment /a1:interface-configurations/a1:interface-configuration/a2:l2-transport {
          description
            "This augment extends the configuration data of
           'Cisco-IOS-XR-l2vpn-cfg'";
          container cac {
            description
              "Connection Attachment Circuit configuration.";
            uses QOS;
          }  // container cac
        }
    
        augment /a1:interface-configurations/a1:interface-configuration {
          description
            "This augment extends the configuration data of
           'Cisco-IOS-XR-ifmgr-cfg'";
          uses QOS;
        }
    
        container qos {
          description
            "Global QOS configuration.";
          leaf fabric-service-policy {
            type xr:Cisco-ios-xr-string {
              length "0..63";
            }
            description
              "Name of the fabric service policy";
          }
        }  // container qos
    
        container ctrlplane {
          description "control plane";
          container locp {
            description "local control-packets";
            container copy-prec-qosgrp {
              presence
                "Copy the precedence group";
            }  // container copy-prec-qosgrp
          }  // container locp
        }  // container ctrlplane
      }  // module Cisco-IOS-XR-qos-ma-cfg
    

© 2023 YumaWorks, Inc. All rights reserved.