Cisco-IOS-XE-pim-oper

This module contains a collection of YANG definitions for Protocol Independent Multicast Operational data. Copyright (c) 2019-20...

  • Version: 2020-07-01

    Cisco-IOS-XE-pim-oper@2020-07-01


    
      module Cisco-IOS-XE-pim-oper {
    
        yang-version 1;
    
        namespace
          "http://cisco.com/ns/yang/Cisco-IOS-XE-pim-oper";
    
        prefix pim-ios-xe-oper;
    
        import ietf-inet-types {
          prefix inet;
        }
        import ietf-yang-types {
          prefix yang;
        }
        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 Protocol Independent Multicast Operational data.
         Copyright (c) 2019-2020 by Cisco Systems, Inc.
         All rights reserved.";
    
        revision "2020-07-01" {
          description "Initial revision";
          reference
            "1.0.0";
    
        }
    
        cisco-semver:module-version "1.0.0";
    
        typedef multicast-addr-family {
          type enumeration {
            enum "multicast-af-ipv4" {
              value 0;
              description
                "Multicast IPv4 address family";
            }
            enum "multicast-af-ipv6" {
              value 1;
              description
                "Multicast IPv6 address family";
            }
          }
          description "Multicast address family";
        }
    
        typedef pim-modes {
          type enumeration {
            enum "pim-dense" {
              value 0;
              description "PIM dense mode";
            }
            enum "pim-sparse" {
              value 1;
              description "PIM sparse mode";
            }
            enum "pim-sparse-dense" {
              value 2;
              description
                "PIM sparse dense mode";
            }
            enum "pim-passive" {
              value 3;
              description "PIM passive mode";
            }
          }
          description "Multicast PIM modes";
        }
    
        typedef pim-per-rp-capability {
          type bits {
            bit pim-rp-pfp-sa-originator {
              position 0;
              description
                "PIM RP Populate from Packet SA Originator";
            }
            bit pim-rp-static-override {
              position 1;
              description
                "PIM RP Static-Override";
            }
            bit pim-rp-static {
              position 2;
              description "PIM RP Static";
            }
            bit pim-rp-dynamic {
              position 3;
              description "PIM RP Dynamic";
            }
            bit pim-rp-bidir {
              position 4;
              description "PIM RP Bidirectional";
            }
            bit pim-rp-elected {
              position 5;
              description "PIM Elected RP";
            }
          }
          description "PIM per RP Capabilities";
        }
    
        typedef pim-rp-mapping-capability {
          type bits {
            bit pim-rp-auto-rp-enabled {
              position 0;
              description "PIM Auto-RP enabled";
            }
            bit pim-rp-candidate {
              position 1;
              description "PIM Candidate RP";
            }
            bit pim-rp-bsr {
              position 2;
              description "PIM Bootstrap Router";
            }
          }
          description
            "PIM RP Mapping Capabilities";
        }
    
        typedef pim-neighbor-capability {
          type bits {
            bit pim-neighbor-bidir {
              position 0;
              description
                "PIM neighbor bidirectional";
            }
            bit pim-neighbor-proxy {
              position 1;
              description "PIM neighbor proxy";
            }
            bit pim-neighbor-state-refresh {
              position 2;
              description
                "PIM neighbor state refresh";
            }
            bit pim-neighbor-gen-id {
              position 3;
              description
                "PIM neighbor generation identifier";
            }
            bit pim-neighbor-drlb {
              position 4;
              description
                "PIM neighbor designated router load balancing";
            }
            bit pim-neighbor-dr {
              position 5;
              description
                "PIM neighbor designated router";
            }
            bit pim-neighbor-def-dr {
              position 6;
              description
                "PIM neighbor default designated router";
            }
          }
          description
            "PIM Neighbor Capabilities";
        }
    
        grouping pim-rp-mapping-state-type {
          description "PIM RP Mapping state";
          leaf rp {
            type inet:ip-address;
            description "PIM RP address";
          }
    
          leaf info-source {
            when
              "(contains(../pim-per-rp-caps, 'pim-rp-dynamic'))";
            type inet:ip-address;
            description
              "PIM RP info-source address";
          }
    
          leaf pim-per-rp-caps {
            type pim-per-rp-capability;
            description
              "PIM per RP capability flags";
          }
    
          leaf rp-uptime {
            when
              "(contains(../pim-per-rp-caps, 'pim-rp-dynamic'))";
            type yang:date-and-time;
            description "PIM RP mapping uptime";
          }
    
          leaf will-expire {
            when
              "(contains(../pim-per-rp-caps, 'pim-rp-dynamic'))";
            type empty;
            description
              "PIM RP mapping expiry applicability";
          }
    
          leaf expires {
            when '(../will-expire)';
            type yang:date-and-time;
            description
              "PIM RP mapping expiry time";
          }
    
          leaf candidate-rp-priority {
            type uint32;
            description
              "PIM RP candidate priority";
          }
    
          leaf holdtime {
            type uint32;
            units "seconds";
            description
              "PIM RP mapping holdtime";
          }
        }  // grouping pim-rp-mapping-state-type
    
        grouping pim-rp-mapping-state {
          description
            "PIM RP mapping state list";
          leaf acl {
            type string;
            description "PIM RP acl name";
          }
    
          list state {
            description
              "PIM RP state list per ACL";
            uses pim-ios-xe-oper:pim-rp-mapping-state-type;
          }  // list state
        }  // grouping pim-rp-mapping-state
    
        grouping pim-rp-mapping-entry {
          description
            "Multicast PIM RP Mapping entry";
          leaf vrf {
            type string;
            description "PIM RP VRF name";
          }
    
          leaf if-name {
            when
              "(contains(../pim-rp-mapping-caps, 'pim-rp-auto-rp-enabled'))";
            type string;
            description
              "PIM RP mapping interface";
          }
    
          leaf pim-rp-mapping-caps {
            type pim-rp-mapping-capability;
            description
              "PIM RP mapping capabilities";
          }
    
          leaf auto-rp-mapping-count {
            type uint64;
            description
              "PIM Auto-RP mapping count";
          }
    
          leaf auto-rp-mapping-limit {
            type uint64;
            description
              "PIM Auto-RP mapping limit";
          }
    
          leaf bsr-mapping-count {
            type uint64;
            description
              "PIM RP BSR mapping count";
          }
    
          leaf bsr-mapping-limit {
            type uint64;
            description
              "PIM RP BSR mapping limit";
          }
    
          list pim-rp-mapping-state {
            key "acl";
            description
              "PIM RP mapping state list";
            uses pim-ios-xe-oper:pim-rp-mapping-state;
          }  // list pim-rp-mapping-state
        }  // grouping pim-rp-mapping-entry
    
        grouping pim-neighbor-state-type {
          description "PIM neighbor state";
          leaf version {
            type uint8;
            description "PIM neighbor version";
          }
    
          leaf dr-priority {
            type uint32;
            description
              "PIM neighbor designated router priority";
          }
    
          leaf gen-id {
            type uint32;
            description
              "PIM neighbor generation identifier";
          }
    
          leaf neighbor-uptime {
            type yang:date-and-time;
            description "PIM neighbor uptime";
          }
    
          leaf expires {
            type yang:date-and-time;
            description
              "PIM neighbor expiry time";
          }
    
          leaf pim-neighbor-caps {
            type pim-neighbor-capability;
            description
              "PIM neighbor capabilities";
          }
    
          leaf pim-dr {
            type inet:ip-address;
            description
              "PIM neighbor designated router";
          }
    
          leaf pim-if-addr {
            type inet:ip-address;
            description
              "PIM neighbor interface address";
          }
    
          leaf neighbor-count {
            type uint32;
            description "PIM neighbor count";
          }
    
          leaf query-interval {
            type uint32;
            units "milliseconds";
            description
              "PIM neighbor query interval";
          }
    
          leaf jp-interval {
            type uint32;
            units "milliseconds";
            description
              "PIM neighbor join prune interval";
          }
    
          leaf pim-mode {
            type pim-modes;
            description "PIM neighbor mode";
          }
        }  // grouping pim-neighbor-state-type
    
        grouping pim-neighbor-state {
          description "PIM neighbor state list";
          leaf pim-neighbor-address {
            type inet:ip-address;
            description "PIM neighbor address";
          }
    
          container state {
            description "PIM neighbor state";
            uses pim-ios-xe-oper:pim-neighbor-state-type;
          }  // container state
        }  // grouping pim-neighbor-state
    
        grouping pim-neighbor-entry {
          description "PIM neighbor entry";
          list pim-neighbor-state {
            key "pim-neighbor-address";
            description
              "PIM neighbor state list";
            uses pim-ios-xe-oper:pim-neighbor-state;
          }  // list pim-neighbor-state
        }  // grouping pim-neighbor-entry
    
        grouping pim-neighbor-table-key {
          description
            "Multicast PIM neighbor key";
          leaf af {
            type multicast-addr-family;
            description
              "PIM neighbor address family";
          }
    
          leaf vrf {
            type string;
            description "PIM neighbor VRF name";
          }
    
          leaf if-name {
            type string;
            description
              "PIM neighbor interface name";
          }
        }  // grouping pim-neighbor-table-key
    
        container pim-oper-data {
          config false;
          description
            "Protocol Independent Multicast Operational data";
          list pim-rp-mapping-entry {
            key "vrf";
            description
              "PIM Rendezvous Point Mapping operational entry";
            uses pim-ios-xe-oper:pim-rp-mapping-entry;
          }  // list pim-rp-mapping-entry
    
          list pim-neighbor-entry {
            key "af vrf if-name";
            description "PIM neighbor entry";
            uses pim-ios-xe-oper:pim-neighbor-table-key;
    
            uses pim-ios-xe-oper:pim-neighbor-entry;
          }  // list pim-neighbor-entry
        }  // container pim-oper-data
      }  // module Cisco-IOS-XE-pim-oper
    

© 2023 YumaWorks, Inc. All rights reserved.