Cisco-IOS-XE-fib-oper

This module contains a collection of YANG definitions for IOS-XE FIB operational data. Copyright (c) 2018-2019 by Cisco Systems,...

  • Version: 2020-03-01

    Cisco-IOS-XE-fib-oper@2020-03-01


    
      module Cisco-IOS-XE-fib-oper {
    
        yang-version 1;
    
        namespace
          "http://cisco.com/ns/yang/Cisco-IOS-XE-fib-oper";
    
        prefix fib-ios-xe-oper;
    
        import ietf-inet-types {
          prefix inet;
        }
        import cisco-semver {
          prefix cisco-semver;
        }
    
        organization "Cisco Systems, Inc.";
    
        contact
          "Cisco Systems, Inc.
         Customer Service
    
         Postal: 170 W Tasman Drive
         San Jose, CA 95134
    
         Tel: +1 1800 553-NETS
    
         E-mail: cs-yang@cisco.com";
    
        description
          "This module contains a collection of YANG definitions
         for IOS-XE FIB operational data.
         Copyright (c) 2018-2019 by Cisco Systems, Inc.
         All rights reserved.";
    
        revision "2020-03-01" {
          description
            "- Added FIB adjacency and CEF state support
           - Rename IPv4 FIB state fields and add fib hash algorithm state
             for IPv4/IPv6 FIB state";
          reference
            "1.4.0";
    
        }
    
        revision "2019-05-01" {
          description "Added semantic version";
          reference
            "1.3.0";
    
        }
    
        revision "2018-10-29" {
          description
            "Cleaned up spelling errors in descriptions.";
          reference
            "1.2.0";
    
        }
    
        revision "2018-03-07" {
          description
            "Adding support for resolved next hop field";
          reference
            "1.1.0";
    
        }
    
        revision "2017-07-04" {
          description "Initial revision";
          reference
            "1.0.0";
    
        }
    
        cisco-semver:module-version "1.4.0";
        cisco-semver:module-version "1.3.0";
        cisco-semver:module-version "1.2.0";
        cisco-semver:module-version "1.1.0";
        cisco-semver:module-version "1.0.0";
    
        typedef fib-address-family {
          type enumeration {
            enum "fib-addr-fam-unknown" {
              value 0;
              description
                "Unknown Address Family";
            }
            enum "fib-addr-fam-ipv4" {
              value 1;
              description "IPv4 Address Family";
            }
            enum "fib-addr-fam-ipv6" {
              value 2;
              description "IPv6 Address Family";
            }
          }
          description "FIB Address Family Types";
        }
    
        typedef encapsulation-header-type {
          type enumeration {
            enum "encap-hdr-type-unknown" {
              value 0;
              description
                "Unknown encapsulation header type";
            }
            enum "encap-hdr-type-gre" {
              value 1;
              description
                "GRE encapsulation header type";
            }
            enum "encap-hdr-type-ipv4" {
              value 2;
              description
                "IPv4 encapsulation header type";
            }
            enum "encap-hdr-type-ipv6" {
              value 3;
              description
                "IPv6 encapsulation header type";
            }
            enum "encap-hdr-type-mpls" {
              value 4;
              description
                "MPLS encapsulation header type";
            }
          }
          description
            "Types of header for packet encapsulation";
        }
    
        typedef fib-path-type {
          type enumeration {
            enum "fib-path-type-unknown" {
              value 0;
              description
                "Unknown FIB path type";
            }
            enum "fib-path-type-receive" {
              value 1;
              description
                "Receive FIB path type";
            }
            enum "fib-path-type-connected" {
              value 2;
              description
                "Connected FIB path type";
            }
            enum "fib-path-type-attached-prefix" {
              value 3;
              description
                "Attached Prefix FIB path type";
            }
            enum "fib-path-type-attached-host" {
              value 4;
              description
                "Attached Host FIB path type";
            }
            enum
              "fib-path-type-attached-nexthop" {
              value 5;
              description
                "Attached next hop FIB path type";
            }
            enum "fib-path-type-recursive" {
              value 6;
              description
                "Recursive FIB path type";
            }
            enum
              "fib-path-type-adjacency-prefix" {
              value 7;
              description
                "Adjacency Prefix FIB path type";
            }
            enum "fib-path-type-special-prefix" {
              value 8;
              description
                "Special Prefix FIB path type";
            }
          }
          description "Type of FIB path used";
        }
    
        typedef adj-link-type {
          type enumeration {
            enum "adj-link-ip" {
              value 0;
              description "Link IP";
            }
            enum "adj-link-ipv6" {
              value 1;
              description "Link IPv6";
            }
            enum "adj-link-tag" {
              value 2;
              description "Link TAG";
            }
            enum "adj-link-raw" {
              value 3;
              description "Link RAW";
            }
            enum "adj-link-all" {
              value 4;
              description "Link All";
            }
            enum "adj-link-illegal" {
              value 5;
              description "Link Illegal";
            }
          }
          description "Adjacency Link Types";
        }
    
        typedef fib-instance-type {
          type enumeration {
            enum "fib-instance-type-unknown" {
              value 0;
              description
                "FIB instance type unknown";
            }
            enum "fib-instance-type-rp" {
              value 1;
              description "FIB instance type RP";
            }
            enum "fib-instance-type-lc" {
              value 2;
              description "FIB Instance type LC";
            }
            enum "fib-instance-type-rrp" {
              value 3;
              description
                "FIB Instance type RRP";
            }
          }
          description "FIB Instance Types";
        }
    
        typedef fib-hash-algs-type {
          type enumeration {
            enum
              "fib-hash-algorithms-type-invalid" {
              value 0;
              description
                "FIB hash algorithms type invalid";
            }
            enum
              "fib-hash-algorithms-type-original" {
              value 1;
              description
                "FIB hash algorithms type original";
            }
            enum
              "fib-hash-algorithms-type-tunnel" {
              value 2;
              description
                "FIB hash algorithms type tunnel";
            }
            enum
              "fib-hash-algorithms-type-universal" {
              value 3;
              description
                "FIB hash algorithms type universal";
            }
            enum
              "fib-hash-algorithms-type-include-ports-src" {
              value 4;
              description
                "FIB hash algorithms type include ports source";
            }
            enum
              "fib-hash-algorithms-type-include-ports-dst" {
              value 5;
              description
                "FIB hash algorithms type include ports destination";
            }
            enum
              "fib-hash-algorithms-type-include-ports-src-dst" {
              value 6;
              description
                "FIB hash algorithms type include ports source destination";
            }
            enum
              "fib-hash-algorithms-type-include-ports-src-dst-gtp" {
              value 7;
              description
                "FIB hash algorithms type include ports source destination GTP";
            }
            enum "fib-hash-algorithms-type-dpi" {
              value 8;
              description
                "FIB hash algorithms type DPI";
            }
          }
          description "FIB Hash Algorithms Type";
        }
    
        grouping fib-nexthop-entry {
          description "FIB Next-hop Entry";
          leaf nh-addr {
            type inet:ip-prefix;
            description "Next hop IP Address";
          }
    
          leaf index {
            type uint32;
            description
              "Unique Next-hop Path Index";
          }
    
          leaf af {
            type fib-address-family;
            description "Address Family";
          }
    
          leaf ifname {
            type string;
            description "Output Interface Name";
          }
    
          leaf path-type {
            type fib-path-type;
            description "FIB path type";
          }
    
          leaf path-id {
            type uint32;
            description
              "Unique Next-hop Path Index";
          }
    
          leaf weight {
            type uint8;
            description "Next-hop weight";
          }
    
          leaf encap {
            type encapsulation-header-type;
            description
              "Encapsulation Header Type";
          }
    
          leaf decap {
            type encapsulation-header-type;
            description
              "Decapsulation Header Type";
          }
    
          leaf resolved-nh-addr {
            type inet:ip-prefix;
            description
              "Resolved Nexthop IP Address";
          }
        }  // grouping fib-nexthop-entry
    
        grouping fib-entry {
          description "FIB Entry";
          leaf ip-addr {
            type inet:ip-prefix;
            description "IP address";
          }
    
          leaf instance-name {
            type string;
            description "Instance Name";
          }
    
          leaf af {
            type fib-address-family;
            description "Address Family";
          }
    
          leaf num-paths {
            type uint8;
            description
              "Number of Paths available";
          }
    
          leaf packets-forwarded {
            type uint64;
            description
              "Packets forwarded through this entry";
          }
    
          leaf octets-forwarded {
            type uint64;
            description
              "Octets forwarded through this entry";
          }
    
          list fib-nexthop-entries {
            key "nh-addr";
            description
              "List of FIB next-hop entries";
            uses fib-ios-xe-oper:fib-nexthop-entry;
          }  // list fib-nexthop-entries
        }  // grouping fib-entry
    
        grouping fib-ni-entry {
          description
            "FIB Network Instance Entry";
          leaf instance-name {
            type string;
            description "Instance Name";
          }
    
          leaf af {
            type fib-address-family;
            description "Address Family";
          }
    
          leaf num-pfx {
            type uint32;
            description "Number of prefixes";
          }
    
          leaf num-pfx-fwd {
            type uint32;
            description
              "Number of forwarding prefixes";
          }
    
          leaf num-pfx-non-fwd {
            type uint32;
            description
              "Number of non-forwarding prefixes";
          }
    
          list fib-entries {
            key "ip-addr";
            description "List of FIB entries";
            uses fib-ios-xe-oper:fib-entry;
          }  // list fib-entries
        }  // grouping fib-ni-entry
    
        grouping adjacency-entry {
          description "FIB adjacency";
          leaf refcount {
            type uint32;
            description "Adjacency refcount";
          }
    
          leaf incomplete {
            type boolean;
            description "Adjacency incomplete";
          }
        }  // grouping adjacency-entry
    
        grouping adjacency-entry-key {
          description "FIB adjacency key";
          leaf connection-id {
            type uint64;
            description
              "Adjacency connection id";
          }
    
          leaf address {
            type inet:ip-address;
            description "Adjacency address";
          }
    
          leaf linktype {
            type adj-link-type;
            description "Adjacency linktype";
          }
    
          leaf if-name {
            type string;
            description
              "Adjacency interface name";
          }
        }  // grouping adjacency-entry-key
    
        grouping adjacency-table {
          description "Adjacency information";
          leaf num-adjacencies {
            type uint32;
            description "Number of adjacencies";
          }
    
          leaf num-complete-adjacencies {
            type uint32;
            description
              "Number of complete adjacencies";
          }
    
          leaf num-incomplete-adjacencies {
            type uint32;
            description
              "Number of incomplete adjacencies";
          }
    
          list adjacency-entry {
            key "connection-id address linktype if-name";
            description
              "Adjacency node information";
            uses fib-ios-xe-oper:adjacency-entry;
    
            uses fib-ios-xe-oper:adjacency-entry-key;
          }  // list adjacency-entry
        }  // grouping adjacency-table
    
        grouping ipv4-fib-state {
          description "IPv4 FIB/CEF state";
          leaf fib-enabled {
            type empty;
            description "FIB/CEF enabled";
          }
    
          leaf fib-running {
            type empty;
            description "FIB/CEF running";
          }
    
          leaf fib-reenable {
            type empty;
            description "FIB/CEF re-enable";
          }
    
          leaf fib-dist-enabled {
            type empty;
            description
              "Distributed FIB/CEF enabled";
          }
    
          leaf fib-dist-running {
            type empty;
            description
              "Distributed FIB/CEF running";
          }
    
          leaf fib-dist-reenable {
            type empty;
            description
              "Distributed FIB/CEF re-enable";
          }
    
          leaf fib-shutting-down {
            type empty;
            description "FIB/CEF shutting down";
          }
    
          leaf fib-switching-enabled {
            type empty;
            description
              "FIB/CEF switching enabled";
          }
    
          leaf fib-switching-running {
            type empty;
            description
              "FIB/CEF switching running";
          }
    
          leaf alg-type {
            type fib-hash-algs-type;
            description
              "FIB hash algorithm type";
          }
        }  // grouping ipv4-fib-state
    
        grouping ipv6-fib-state {
          description "IPv6 FIB/CEF state";
          leaf fib-enabled {
            type empty;
            description "FIB/CEF enabled";
          }
    
          leaf fib-running {
            type empty;
            description "FIB/CEF running";
          }
    
          leaf fib-dist-enabled {
            type empty;
            description
              "Distributed FIB/CEF enabled";
          }
    
          leaf fib-dist-running {
            type empty;
            description
              "Distributed FIB/CEF running";
          }
    
          leaf alg-type {
            type fib-hash-algs-type;
            description
              "FIB hash algorithm type";
          }
        }  // grouping ipv6-fib-state
    
        grouping fib-rrp-state {
          description "FIB/CEF RRP state";
          leaf i-am-standby {
            type empty;
            description "Standby RRP";
          }
    
          leaf peer-presence {
            type empty;
            description "RF peer presence";
          }
    
          leaf peer-comm-reached {
            type empty;
            description "RF peer comm reached";
          }
    
          leaf rf-has-done-standby-config {
            type empty;
            description "RF peer config done";
          }
    
          leaf rf-prog-blocked {
            type empty;
            description "RF progression blocked";
          }
    
          leaf nsf-sync-enabled {
            type empty;
            description "NSF sync enabled";
          }
    
          leaf lc-nsf-sync-running {
            type empty;
            description "LC NSF sync running";
          }
        }  // grouping fib-rrp-state
    
        grouping fib-issu-state {
          description "FIB/CEF ISSU state";
          leaf xdrc-fibhwidb-broker {
            type empty;
            description
              "External Data Representation client FIB Hardware IDB broker";
          }
    
          leaf xdrc-fibidb-broker {
            type empty;
            description
              "External Data Representation client FIB IDB broker";
          }
    
          leaf xdrc-fibhwsb-broker {
            type empty;
            description
              "External Data Representation client FIB Hardware Sub-block broker";
          }
    
          leaf xdrc-fibswsb-broker {
            type empty;
            description
              "External Data Representation client FIB Software Sub-block broker";
          }
    
          leaf xdrc-adj-broker {
            type empty;
            description
              "External Data Representation client Adjacency broker";
          }
    
          leaf xdrc-ipv4-broker {
            type empty;
            description
              "External Data Representation client IPv4 broker";
          }
    
          leaf xdrc-ipv6-broker {
            type empty;
            description
              "External Data Representation client IPv6 broker";
          }
    
          leaf xdrc-cef {
            type empty;
            description
              "External Data Representation client CEF";
          }
        }  // grouping fib-issu-state
    
        grouping fib-state {
          description "FIB/CEF state";
          leaf instance-type {
            type fib-instance-type;
            description "FIB/CEF instance type";
          }
    
          leaf fib-common-enabled {
            type boolean;
            description "Common FIB/CEF enabled";
          }
    
          container ipv4 {
            description "IPv4 FIB/CEF state";
            uses fib-ios-xe-oper:ipv4-fib-state;
          }  // container ipv4
    
          container ipv6 {
            description "IPv6 FIB/CEF state";
            uses fib-ios-xe-oper:ipv6-fib-state;
          }  // container ipv6
    
          container rrp {
            description "RRP FIB/CEF state";
            uses fib-ios-xe-oper:fib-rrp-state;
          }  // container rrp
    
          container issu {
            description "ISSU FIB/CEF state";
            uses fib-ios-xe-oper:fib-issu-state;
          }  // container issu
        }  // grouping fib-state
    
        grouping ipv4-fib-capability-state {
          description
            "FIB/CEF IPv4 capability state";
          leaf default-fib-switching {
            type empty;
            description
              "Default FIB/CEF switching";
          }
    
          leaf always-fib-switching {
            type empty;
            description
              "Always FIB/CEF switching";
          }
    
          leaf default-dfib-switching {
            type empty;
            description
              "Default distributed FIB/CEF switching";
          }
    
          leaf always-dfib-switching {
            type empty;
            description
              "Always distributed FIB/CEF switching";
          }
    
          leaf multicast-pkt-drop {
            type empty;
            description "Drop multicast packets";
          }
    
          leaf punt-ok {
            type empty;
            description "Punt ok";
          }
    
          leaf do-not-nvgen-fib-state {
            type empty;
            description "NVGEN FIB/CEF state";
          }
    
          leaf fastsend-used {
            type empty;
            description
              "fast send function used";
          }
    
          leaf no-per-packet-load {
            type empty;
            description
              "Support per packet load sharing";
          }
    
          leaf mcast-groups-in-table {
            type empty;
            description
              "Multicast (*,G) groups in CEF";
          }
    
          leaf rib-installs-locals {
            type empty;
            description
              "Install local entries from RIB";
          }
        }  // grouping ipv4-fib-capability-state
    
        grouping ipv6-fib-capability-state {
          description
            "IPv6 FIB/CEF capability state";
          leaf default-fib-switching {
            type empty;
            description
              "Default FIB/CEF switching";
          }
    
          leaf always-fib-switching {
            type empty;
            description
              "Always FIB/CEF switching";
          }
    
          leaf default-dfib-switching {
            type empty;
            description
              "Default distributed FIB/CEF switching";
          }
    
          leaf always-dfib-switching {
            type empty;
            description
              "Always distributed FIB/CEF switching";
          }
    
          leaf multicast-pkt-drop {
            type empty;
            description "Drop multicast packets";
          }
    
          leaf punt-ok {
            type empty;
            description "OK to punt packets";
          }
    
          leaf do-not-nvgen-fib-state {
            type empty;
            description "NVGEN FIB/CEF state";
          }
    
          leaf fastsend-used {
            type empty;
            description
              "fast send function used";
          }
        }  // grouping ipv6-fib-capability-state
    
        grouping fib-capability-state {
          description "FIB/CEF capability state";
          leaf distributed-platform {
            type empty;
            description "Distributed platform";
          }
    
          leaf warm-or-hot-standby-supported {
            type empty;
            description
              "Warm or Hot Standby supported";
          }
    
          leaf non-stop-forwarding {
            type empty;
            description "CEF NSF capable";
          }
    
          leaf hw-fwd-in-use {
            type empty;
            description "Hardware forwarding";
          }
    
          leaf fib-chck-auto-repair {
            type empty;
            description
              "Checker auto-repair supported";
          }
    
          leaf crashdump-when-no-mem {
            type empty;
            description
              "Crash dump on memory failure";
          }
    
          leaf block-sso-until-rrp-synced {
            type empty;
            description
              "Blocking STANDBY HOT until synced";
          }
    
          container ipv4 {
            description
              "IPv4 CEF capability state";
            uses fib-ios-xe-oper:ipv4-fib-capability-state;
          }  // container ipv4
    
          container ipv6 {
            description
              "IPv6 CEF capability state";
            uses fib-ios-xe-oper:ipv6-fib-capability-state;
          }  // container ipv6
        }  // grouping fib-capability-state
    
        grouping cef-state {
          description "CEF state";
          container fib {
            description "FIB/CEF state";
            uses fib-ios-xe-oper:fib-state;
          }  // container fib
    
          container capability {
            description
              "FIB/CEF capability state";
            uses fib-ios-xe-oper:fib-capability-state;
          }  // container capability
        }  // grouping cef-state
    
        container fib-oper-data {
          config false;
          description
            "Cisco Express Forwarding operational data";
          list fib-ni-entry {
            key "instance-name";
            description "FIB Network Instances";
            uses fib-ios-xe-oper:fib-ni-entry;
          }  // list fib-ni-entry
    
          container adjacency-table {
            presence "adjacency-table";
            description
              "FIB adjacency information";
            uses fib-ios-xe-oper:adjacency-table;
          }  // container adjacency-table
    
          container cef-state {
            presence "cef-state";
            description "CEF state information";
            uses fib-ios-xe-oper:cef-state;
          }  // container cef-state
        }  // container fib-oper-data
      }  // module Cisco-IOS-XE-fib-oper
    

© 2023 YumaWorks, Inc. All rights reserved.