Cisco-IOS-XR-mpls-lsd-cfg

This module contains a collection of YANG definitions for Cisco IOS-XR mpls-lsd package configuration. This model is deprecated...

  • Version: 2020-11-26

    Cisco-IOS-XR-mpls-lsd-cfg@2020-11-26


    
      module Cisco-IOS-XR-mpls-lsd-cfg {
    
        yang-version 1;
    
        namespace
          "http://cisco.com/ns/yang/Cisco-IOS-XR-mpls-lsd-cfg";
    
        prefix mpls-lsd-cfg;
    
        import Cisco-IOS-XR-types {
          prefix xr;
        }
        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 module contains a collection of YANG definitions
         for Cisco IOS-XR mpls-lsd package configuration.
         
         This model is deprecated and is replaced by
         Cisco-IOS-XR-um-mpls-lsd-cfg.yang which will provide the
         compatible functionalities.
         
         This module contains definitions
         for the following management objects:
           mpls-lsd: MPLS LSD configuration data
         
         Copyright (c) 2013-2020 by Cisco Systems, Inc.
         All rights reserved.";
    
        revision "2020-11-26" {
          description
            "Added a new block type PFP under exisiting label blocks config
           2020-07-30
             Hide app-reg-delay-disable, deprecated";
        }
    
        revision "2019-08-20" {
          description
            "MPLS label block config default values added.";
        }
    
        revision "2019-05-12" {
          description
            "Deprecated the native model, replaced by UM model.";
        }
    
        revision "2019-04-05" {
          description
            "Establish semantic version baseline.";
        }
    
        revision "2018-06-15" {
          description
            "Allow min..max in range when min == max.";
        }
    
        revision "2015-11-09" {
          description "IOS XR 6.0 revision.";
        }
    
        semver:module-version "2.0.0";
        semver:module-version "1.1.0";
        semver:module-version "1.0.0";
    
        typedef Label-block {
          type enumeration {
            enum "cbf" {
              value 3;
              description "CBF block";
            }
            enum "pfp" {
              value 4;
              description "PFP block";
            }
          }
          description "Label block";
        }
    
        typedef Label-block-client-name {
          type xr:Cisco-ios-xr-string {
            length "1..48";
          }
          description "Label block client name";
        }
    
        typedef Label-range {
          type enumeration {
            enum "lower-upper" {
              value 0;
              description
                "Start and end of block";
            }
            enum "lower-size" {
              value 1;
              description
                "Start and size of block";
            }
          }
          description "Label range";
        }
    
        typedef Mpls-ip-ttl-propagate-disable {
          type enumeration {
            enum "all" {
              value 0;
              description
                "Disable IP TTL propagation for all MPLS packets";
            }
            enum "forward" {
              value 1;
              description
                "Disable IP TTL propagation for only forwarded
               MPLS packets";
            }
            enum "local" {
              value 2;
              description
                "Disable IP TTL propagation for only locally
               generated MPLS packets";
            }
          }
          description
            "Mpls ip ttl propagate disable";
        }
    
        grouping TTL-EXPIRATION-POP {
          description
            "Common node of ipv4, ipv6";
          leaf ttl-expiration-pop {
            type uint32 {
              range "1..10";
            }
            description
              "Number of labels to pop upon MPLS IP TTL expiry";
          }
        }  // grouping TTL-EXPIRATION-POP
    
        container mpls-lsd {
          status deprecated;
          description
            "This model is deprecated and is replaced by
           Cisco-IOS-XR-um-mpls-lsd-cfg.yang which will
           provide the compatible functionalities.  MPLS LSD
           configuration data";
          container ipv6 {
            description
              "Configure IPv6 parameters";
            uses TTL-EXPIRATION-POP;
          }  // container ipv6
    
          container ipv4 {
            description
              "Configure IPv4 parameters";
            uses TTL-EXPIRATION-POP;
          }  // container ipv4
    
          container label-databases {
            description
              "Table of label databases";
            list label-database {
              key "label-database-id";
              description "A label database";
              container label-range {
                description "Label range";
                leaf minvalue {
                  type uint32 {
                    range "16000..1048575";
                  }
                  description
                    "Minimum label value";
                }
    
                leaf max-value {
                  type uint32 {
                    range "16000..1048575";
                  }
                  description
                    "Maximum label value";
                }
    
                leaf min-static-value {
                  type uint32 {
                    range "0..1048575";
                  }
                  description
                    "Minimum static label value";
                }
    
                leaf max-static-value {
                  type uint32 {
                    range "0..1048575";
                  }
                  description
                    "Maximum static label value";
                }
              }  // container label-range
    
              container label-blocks {
                description
                  "A label blocks database";
                list label-block {
                  key "block-name";
                  description "Label block";
                  leaf block-name {
                    type xr:Cisco-ios-xr-string;
                    description
                      "Label block identifier";
                  }
    
                  leaf block-type {
                    type Label-block;
                    description
                      "Label block type";
                  }
    
                  leaf range-type {
                    type Label-range;
                    default "lower-upper";
                    description
                      "Label range type";
                  }
    
                  leaf lower-bound {
                    type uint32 {
                      range "16000..1048575";
                    }
                    default "16000";
                    description
                      "Lower bound of block";
                  }
    
                  leaf upper-bound {
                    when
                      "../range-type != 'lower-size'" {
                      description
                        "../RangeType != LowerSize";
                    }
                    type uint32 {
                      range "16000..1048575";
                    }
                    default "16000";
                    description
                      "Upper bound of block";
                  }
    
                  leaf block-size {
                    when
                      "../range-type != 'lower-upper'" {
                      description
                        "../RangeType != LowerUpper";
                    }
                    type uint32 {
                      range "1..1032576";
                    }
                    default "1";
                    description "Size of block";
                  }
    
                  leaf client-instance-name {
                    type Label-block-client-name;
                    default "any";
                    description
                      "Client instance name";
                  }
                }  // list label-block
              }  // container label-blocks
    
              leaf label-database-id {
                type uint32 {
                  range "0";
                }
                description
                  "Label database identifier";
              }
            }  // list label-database
          }  // container label-databases
    
          leaf ltrace-multiplier {
            type uint32 {
              range "2..5";
            }
            description
              "Multiply the MPLS LSD Ltrace buffer length";
          }
    
          leaf mpls-entropy-label {
            type empty;
            description
              "Enable MPLS Entropy Label";
          }
    
          leaf mpls-ip-ttl-propagate-disable {
            type Mpls-ip-ttl-propagate-disable;
            description
              "Disable Propagation of IP TTL onto the label
             stack";
          }
        }  // container mpls-lsd
      }  // module Cisco-IOS-XR-mpls-lsd-cfg
    

© 2023 YumaWorks, Inc. All rights reserved.