junos-ex-conf-unified-edge

Junos unified-edge configuration module

  • Version: 2019-01-01

    junos-ex-conf-unified-edge@2019-01-01


    
      module junos-ex-conf-unified-edge {
    
        yang-version 1;
    
        namespace
          "http://yang.juniper.net/junos-ex/conf/unified-edge";
    
        prefix jc-unified-edge;
    
        import junos-common-ddl-extensions {
          prefix junos;
          revision-date "2019-01-01";
        }
        import junos-common-types {
          prefix jt;
          revision-date "2019-01-01";
        }
        import junos-ex-conf-root {
          prefix jc;
          revision-date "2019-01-01";
        }
    
        organization "Juniper Networks, Inc.";
    
        contact "yang-support@juniper.net";
    
        description
          "Junos unified-edge configuration module";
    
        revision "2019-01-01" {
          description "Junos: 21.3R1.9";
        }
    
    
        augment /jc:configuration {
          uses unified-edge-group;
        }
    
        augment /jc:configuration/jc:groups {
          uses unified-edge-group;
        }
    
        grouping unified-edge-group {
          container unified-edge {
            uses apply-advanced;
    
            container cos-cac {
              status deprecated;
              description
                "Unified Edge COS configuration";
              uses juniper-unified-edge-cos-options;
            }  // container cos-cac
    
            list local-policies {
              key "name";
              max-elements 8001;
              ordered-by user;
              status deprecated;
              description
                "Local policy profiles";
              leaf name {
                type string {
                  junos:posix-pattern "^.{1,64}$";
                  junos:pattern-message "Must be string of 64 characters or less";
                }
                description
                  "Local policy profile name";
              }
    
              uses apply-advanced;
    
              leaf description {
                type string;
                description
                  "Text description of local policy";
              }
    
              leaf resource-threshold-profile {
                type string;
                description
                  "Resource threshold profile associated with the local policy";
              }
    
              leaf classifier-profile {
                type string;
                description
                  "QoS class profile associated with the local policy";
              }
    
              leaf cos-policy-profile {
                type string;
                description
                  "QoS policy profile associated with the local policy";
              }
    
              leaf roamer-classifier-profile {
                type string;
                description
                  "QoS classifier profile for roamers";
              }
    
              leaf roamer-cos-policy-profile {
                type string;
                description
                  "QoS policy profile for roamers";
              }
    
              leaf visitor-classifier-profile {
                type string;
                description
                  "QoS classifier profile for visitor";
              }
    
              leaf visitor-cos-policy-profile {
                type string;
                description
                  "QoS policy profile for visitor";
              }
    
              leaf traffic-class-qci-mapping-profile {
                type string {
                  length "1 .. 128";
                }
                description
                  "Traffic class to qci mapping profile";
              }
    
              leaf ul-bandwidth-pool {
                type string;
                description
                  "Bandwidth pool associated with the local policy";
              }
    
              leaf dl-bandwidth-pool {
                type string;
                description
                  "Bandwidth pool associated with the local policy";
              }
            }  // list local-policies
          }  // container unified-edge
        }  // grouping unified-edge-group
    
        grouping apply-advanced {
          description
            "Apply advanced configuration logic";
          leaf-list apply-groups {
            type string;
            ordered-by user;
            description
              "Groups from which to inherit configuration data";
          }
    
          leaf-list apply-groups-except {
            type string;
            ordered-by user;
            description
              "Don't inherit configuration data from these groups";
          }
    
          list apply-macro {
            key "name";
            ordered-by user;
            description
              "Macro and parameters for commit script expansion";
            uses apply-macro-type;
          }  // list apply-macro
        }  // grouping apply-advanced
    
        grouping apply-macro-type {
          description
            "Macro data for commit-script expansion";
          leaf name {
            type string;
            description
              "Name of the macro to be expanded";
          }
    
          list data {
            key "name";
            uses macro-data-type;
          }  // list data
        }  // grouping apply-macro-type
    
        grouping juniper-unified-edge-cos-options {
          uses apply-advanced;
    
          list classifier-profiles {
            key "name";
            max-elements 8001;
            ordered-by user;
            description
              "Classifier tables for mobile subscribers (UMTS/EPS)";
            leaf name {
              type string {
                junos:posix-pattern "^.{1,64}$";
                junos:pattern-message "Must be string of 64 characters or less";
              }
              description
                "Classification table name";
            }
    
            uses apply-advanced;
    
            leaf description {
              type string;
              description
                "Text description of classifier profile";
            }
    
            list qos-class-identifier {
              key "name";
              ordered-by user;
              description
                "QCI mapping to forwarding class and loss priority";
              leaf name {
                type union {
                  type string {
                    pattern "<.*>|$.*";
                  }
                  type uint32 {
                    range "1 .. 9";
                  }
                }
                description "Qci value";
              }
    
              leaf forwarding-class {
                type string {
                  junos:posix-pattern "^.{1,64}$";
                  junos:pattern-message "Must be string of 64 characters or less";
                }
                description "Forwarding class";
              }
    
              leaf loss-priority {
                type enumeration {
                  enum "low" {
                    value 0;
                    description
                      "Loss priority low";
                  }
                  enum "high" {
                    value 1;
                    description
                      "Loss priority high";
                  }
                }
                description
                  "Loss priority value";
              }
            }  // list qos-class-identifier
          }  // list classifier-profiles
    
          list gbr-bandwidth-pools {
            key "name";
            max-elements 8001;
            ordered-by user;
            description
              "GBR bandwith pools configuration";
            leaf name {
              type string {
                junos:posix-pattern "^.{1,64}$";
                junos:pattern-message "Must be string of 64 characters or less";
              }
              description
                "GBR Bandwidth pool name";
            }
    
            uses apply-advanced;
    
            leaf maximum-bandwidth {
              type union {
                type string {
                  pattern "<.*>|$.*";
                }
                type uint32 {
                  range "50000 .. 500000";
                }
              }
              units "mega-bits per second";
              description "Bandwidth for pool";
            }
    
            leaf downgrade-gtp-v1-gbr-bearers {
              type empty;
              description
                "Downgrade GTPv1 GBR bearer traffic class to background traffic class";
            }
          }  // list gbr-bandwidth-pools
    
          list resource-threshold-profiles {
            key "name";
            max-elements 8001;
            ordered-by user;
            description
              "Resource threshold profiles";
            leaf name {
              type string {
                junos:posix-pattern "^.{1,64}$";
                junos:pattern-message "Must be string of 64 characters or less";
              }
              description
                "Resource threshold profile name";
            }
    
            uses apply-advanced;
    
            leaf description {
              type string;
              description
                "Text description of resource threshold profile";
            }
    
            container bearers-load {
              description
                "Number of bearers load configurations";
              uses apply-advanced;
    
              container low {
                description
                  "Low threshold configuration";
                uses apply-advanced;
    
                leaf percentage {
                  type union {
                    type string {
                      pattern "<.*>|$.*";
                    }
                    type uint32 {
                      range "1 .. 100";
                    }
                  }
                  units "Percentage";
                  description "Low threshold";
                }
    
                leaf priority-level {
                  type union {
                    type string {
                      pattern "<.*>|$.*";
                    }
                    type uint32 {
                      range "1 .. 15";
                    }
                  }
                  default "10";
                  description
                    "Priority level - default 10";
                }
              }  // container low
    
              container high {
                description
                  "High threshold configuration";
                uses apply-advanced;
    
                leaf percentage {
                  type union {
                    type string {
                      pattern "<.*>|$.*";
                    }
                    type uint32 {
                      range "1 .. 100";
                    }
                  }
                  units "Percentage";
                  description "High threshold";
                }
    
                leaf priority-level {
                  type union {
                    type string {
                      pattern "<.*>|$.*";
                    }
                    type uint32 {
                      range "1 .. 15";
                    }
                  }
                  default "5";
                  description
                    "Priority level - default 5";
                }
              }  // container high
            }  // container bearers-load
    
            container memory {
              description
                "Memory load configurations";
              uses apply-advanced;
    
              container low {
                description
                  "Low threshold configuration";
                uses apply-advanced;
    
                leaf percentage {
                  type union {
                    type string {
                      pattern "<.*>|$.*";
                    }
                    type uint32 {
                      range "1 .. 100";
                    }
                  }
                  units "Percentage";
                  description "Low threshold";
                }
    
                leaf priority-level {
                  type union {
                    type string {
                      pattern "<.*>|$.*";
                    }
                    type uint32 {
                      range "1 .. 15";
                    }
                  }
                  default "10";
                  description
                    "Priority level - default 10";
                }
              }  // container low
    
              container high {
                description
                  "High threshold configuration";
                uses apply-advanced;
    
                leaf percentage {
                  type union {
                    type string {
                      pattern "<.*>|$.*";
                    }
                    type uint32 {
                      range "1 .. 100";
                    }
                  }
                  units "Percentage";
                  description "High threshold";
                }
    
                leaf priority-level {
                  type union {
                    type string {
                      pattern "<.*>|$.*";
                    }
                    type uint32 {
                      range "1 .. 15";
                    }
                  }
                  default "5";
                  description
                    "Priority level - default 5";
                }
              }  // container high
            }  // container memory
    
            container cpu {
              description
                "CPU load configurations";
              uses apply-advanced;
    
              container low {
                description
                  "Low threshold configuration";
                uses apply-advanced;
    
                leaf percentage {
                  type union {
                    type string {
                      pattern "<.*>|$.*";
                    }
                    type uint32 {
                      range "1 .. 100";
                    }
                  }
                  units "Percentage";
                  description "Low threshold";
                }
    
                leaf priority-level {
                  type union {
                    type string {
                      pattern "<.*>|$.*";
                    }
                    type uint32 {
                      range "1 .. 15";
                    }
                  }
                  default "10";
                  description
                    "Priority level - default 10";
                }
              }  // container low
    
              container high {
                description
                  "High threshold configuration";
                uses apply-advanced;
    
                leaf percentage {
                  type union {
                    type string {
                      pattern "<.*>|$.*";
                    }
                    type uint32 {
                      range "1 .. 100";
                    }
                  }
                  units "Percentage";
                  description "High threshold";
                }
    
                leaf priority-level {
                  type union {
                    type string {
                      pattern "<.*>|$.*";
                    }
                    type uint32 {
                      range "1 .. 15";
                    }
                  }
                  default "5";
                  description
                    "Priority level - default 5";
                }
              }  // container high
            }  // container cpu
          }  // list resource-threshold-profiles
    
          list cos-policy-profiles {
            key "name";
            max-elements 8001;
            ordered-by user;
            description "QoS policy profile";
            leaf name {
              type string {
                junos:posix-pattern "^.{1,64}$";
                junos:pattern-message "Must be string of 64 characters or less";
              }
              description
                "QoS policy profile name";
            }
    
            uses apply-advanced;
    
            leaf description {
              type string;
              description
                "Text description of cos policy";
            }
    
            container default-bearer-qci {
              description
                "Default bearer qci value";
              leaf qci-value {
                type union {
                  type string {
                    pattern "<.*>|$.*";
                  }
                  type uint8 {
                    range "5 .. 9";
                  }
                }
                description
                  "Default bearer qci value";
              }
    
              leaf upgrade {
                type empty;
                description "Override qci value";
              }
    
              leaf reject {
                type empty;
                description
                  "Reject calls with numerially lower qci";
              }
            }  // container default-bearer-qci
    
            container allocation-retention-priority {
              description "ARP local policy";
              leaf priority-value {
                type union {
                  type string {
                    pattern "<.*>|$.*";
                  }
                  type uint8 {
                    range "1 .. 15";
                  }
                }
                description
                  "ARP policy configuration";
              }
    
              leaf reject {
                type empty;
                description
                  "Reject calls with higher priority value";
              }
            }  // container allocation-retention-priority
    
            container aggregated-qos-control {
              description
                "Aggregated qos control policy";
              uses apply-advanced;
    
              container maximum-bit-rate-uplink {
                description
                  "Maximum bit rate uplink";
                leaf mbr-uplink {
                  type union {
                    type string {
                      pattern "<.*>|$.*";
                    }
                    type uint32 {
                      range "1 .. 1000000";
                    }
                  }
                  units "kbps";
                }
    
                leaf upgrade {
                  type empty;
                  description
                    "Override maximum-bit-rate uplink value";
                }
    
                leaf reject {
                  type empty;
                  description
                    "Reject calls with higher uplink maximum-bit-rate";
                }
              }  // container maximum-bit-rate-uplink
    
              container maximum-bit-rate-downlink {
                description
                  "Maximum bit rate downlink";
                leaf mbr-downlink {
                  type union {
                    type string {
                      pattern "<.*>|$.*";
                    }
                    type uint32 {
                      range "1 .. 1000000";
                    }
                  }
                  units "kbps";
                }
    
                leaf upgrade {
                  type empty;
                  description
                    "Override maximum-bit-rate downlink value";
                }
    
                leaf reject {
                  type empty;
                  description
                    "Reject calls with higher downlink maximum-bit-rate";
                }
              }  // container maximum-bit-rate-downlink
            }  // container aggregated-qos-control
    
            container pdp-qos-control {
              description "PDP qos control";
              uses apply-advanced;
    
              container maximum-bit-rate-uplink {
                description
                  "Maximum bit rate uplink";
                leaf mbr-uplink {
                  type union {
                    type string {
                      pattern "<.*>|$.*";
                    }
                    type uint32 {
                      range "1 .. 10480000";
                    }
                  }
                  units "kbps";
                }
    
                leaf upgrade {
                  type empty;
                  description
                    "Override maximum-bit-rate uplink value";
                }
    
                leaf reject {
                  type empty;
                  description
                    "Reject calls with higher uplink maximum-bit-rate";
                }
              }  // container maximum-bit-rate-uplink
    
              container maximum-bit-rate-downlink {
                description
                  "Maximum bit rate downlink";
                leaf mbr-downlink {
                  type union {
                    type string {
                      pattern "<.*>|$.*";
                    }
                    type uint32 {
                      range "1 .. 10480000";
                    }
                  }
                  units "kbps";
                }
    
                leaf upgrade {
                  type empty;
                  description
                    "Override maximum-bit-rate downlink value";
                }
    
                leaf reject {
                  type empty;
                  description
                    "Reject calls with higher downlink maximum-bit-rate";
                }
              }  // container maximum-bit-rate-downlink
    
              container guaranteed-bit-rate-uplink {
                description
                  "Guaranteed bit rate uplink";
                leaf gbr-uplink {
                  type union {
                    type string {
                      pattern "<.*>|$.*";
                    }
                    type uint32 {
                      range "1 .. 10480000";
                    }
                  }
                  units "kbps";
                }
    
                leaf upgrade {
                  type empty;
                  description
                    "Override guaranteed-bit-rate uplink value";
                }
    
                leaf reject {
                  type empty;
                  description
                    "Reject calls with higher uplink guaranteed-bit-rate";
                }
              }  // container guaranteed-bit-rate-uplink
    
              container guaranteed-bit-rate-downlink {
                description
                  "Guaranteed bit rate downlink";
                leaf gbr-downlink {
                  type union {
                    type string {
                      pattern "<.*>|$.*";
                    }
                    type uint32 {
                      range "1 .. 10480000";
                    }
                  }
                  units "kbps";
                }
    
                leaf upgrade {
                  type empty;
                  description
                    "Override guaranteed-bit-rate downlink value";
                }
    
                leaf reject {
                  type empty;
                  description
                    "Reject calls with higher downlink guaranteed-bit-rate";
                }
              }  // container guaranteed-bit-rate-downlink
    
              list qci {
                key "name";
                ordered-by user;
                description
                  "PDP qos control per qci";
                leaf name {
                  type union {
                    type string {
                      pattern "<.*>|$.*";
                    }
                    type uint8 {
                      range "5 .. 9";
                    }
                  }
                }
    
                uses apply-advanced;
    
                container maximum-bit-rate-uplink {
                  description
                    "Maximum bit rate uplink";
                  leaf mbr-uplink {
                    type union {
                      type string {
                        pattern "<.*>|$.*";
                      }
                      type uint32 {
                        range "1 .. 10480000";
                      }
                    }
                    units "kbps";
                  }
    
                  leaf upgrade {
                    type empty;
                    description
                      "Override maximum-bit-rate uplink value";
                  }
    
                  leaf reject {
                    type empty;
                    description
                      "Reject calls with higher uplink maximum-bit-rate";
                  }
                }  // container maximum-bit-rate-uplink
    
                container maximum-bit-rate-downlink {
                  description
                    "Maximum bit rate downlink";
                  leaf mbr-downlink {
                    type union {
                      type string {
                        pattern "<.*>|$.*";
                      }
                      type uint32 {
                        range "1 .. 10480000";
                      }
                    }
                    units "kbps";
                  }
    
                  leaf upgrade {
                    type empty;
                    description
                      "Override maximum-bit-rate downlink value";
                  }
    
                  leaf reject {
                    type empty;
                    description
                      "Reject calls with higher downlink maximum-bit-rate";
                  }
                }  // container maximum-bit-rate-downlink
              }  // list qci
            }  // container pdp-qos-control
    
            container policer-action {
              description "Policer actions";
              uses apply-advanced;
    
              container non-gbr-bearer {
                description
                  "Policer actions for non gbr bearers";
                uses apply-advanced;
    
                leaf violate-action {
                  type enumeration {
                    enum
                      "set-loss-priority-high" {
                      value 0;
                      description
                        "Violate action set loss priority high";
                    }
                    enum "transmit" {
                      value 1;
                      description
                        "Violate action transmit";
                    }
                  }
                  description
                    "PDP policer violate action";
                }
              }  // container non-gbr-bearer
    
              container gbr-bearer {
                description
                  "Policer actions for gbr bearers";
                uses apply-advanced;
    
                leaf exceed-action {
                  type enumeration {
                    enum "drop" {
                      value 0;
                      description
                        "Exceed action drop";
                    }
                    enum "transmit" {
                      value 1;
                      description
                        "Exceed action transmit";
                    }
                  }
                  description
                    "PDP policer exceed action";
                }
    
                leaf violate-action {
                  type enumeration {
                    enum
                      "set-loss-priority-high" {
                      value 0;
                      description
                        "Violate action set loss priority high";
                    }
                    enum "transmit" {
                      value 1;
                      description
                        "Violate action transmit";
                    }
                  }
                  description
                    "PDP policer violate action";
                }
              }  // container gbr-bearer
            }  // container policer-action
          }  // list cos-policy-profiles
        }  // grouping juniper-unified-edge-cos-options
    
        grouping macro-data-type {
          leaf name {
            type string;
            description
              "Keyword part of the keyword-value pair";
          }
    
          leaf value {
            type string;
            description
              "Value part of the keyword-value pair";
          }
        }  // grouping macro-data-type
      }  // module junos-ex-conf-unified-edge
    

© 2023 YumaWorks, Inc. All rights reserved.