This submodule contains a collection of YANG definitions for Cisco IOS-XR l2rib package operational data. Copyright (c) 2013-20...
Version: 2019-11-22
submodule Cisco-IOS-XR-l2rib-oper-sub1 { yang-version 1; belongs-to Cisco-IOS-XR-l2rib-oper { prefix Cisco-IOS-XR-l2rib-oper; } import ietf-inet-types { prefix inet; } import ietf-yang-types { prefix yang; } 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 submodule contains a collection of YANG definitions for Cisco IOS-XR l2rib package operational data. Copyright (c) 2013-2019 by Cisco Systems, Inc. All rights reserved."; revision "2019-11-22" { description "Added to path for Mac/IP Table and Mac/IP Detail Table"; } revision "2019-04-05" { description "Establish semantic version baseline."; } revision "2015-11-09" { description "IOS XR 6.0 revision."; } semver:module-version "2.1.0"; semver:module-version "1.0.0"; typedef L2rib-mac-route { type enumeration { enum "l2rib-mac-route-type-invalid" { value 0; description "l2rib mac route type invalid"; } enum "l2rib-mac-route-type-regular" { value 1; description "l2rib mac route type regular"; } enum "l2rib-mac-route-type-evpn-esi" { value 2; description "l2rib mac route type evpn esi"; } enum "l2rib-mac-route-type-bmac" { value 3; description "l2rib mac route type bmac"; } } description "L2rib mac route"; } typedef L2rib-afi { type enumeration { enum "l2rib-address-family-ipv4" { value 0; description "l2rib address family ipv4"; } enum "l2rib-address-family-ipv6" { value 1; description "l2rib address family ipv6"; } enum "l2rib-address-family-invalid" { value 2; description "l2rib address family invalid"; } } description "L2rib afi"; } typedef L2rib-mac-addr { type yang:mac-address; description "L2rib mac addr"; } typedef L2rib-ipv6-addr { type inet:ipv6-address; description "L2rib ipv6 addr"; } typedef L2rib-next-hop { type enumeration { enum "l2rib-next-hop-invalid" { value 0; description "l2rib next hop invalid"; } enum "l2rib-next-hop-interface-ordinal" { value 1; description "l2rib next hop interface ordinal"; } enum "l2rib-next-hop-interface-index" { value 2; description "l2rib next hop interface index"; } enum "l2rib-next-hop-mac" { value 3; description "l2rib next hop mac"; } enum "l2rib-next-hop-ipv4" { value 4; description "l2rib next hop ipv4"; } enum "l2rib-next-hop-ipv6" { value 5; description "l2rib next hop ipv6"; } enum "l2rib-next-hop-overlay" { value 6; description "l2rib next hop overlay"; } enum "l2rib-next-hop-site-index" { value 7; description "l2rib next hop site index"; } enum "l2rib-next-hop-label-ed" { value 8; description "l2rib next hop label ed"; } enum "l2rib-next-hop-xid" { value 9; description "l2rib next hop xid"; } } description "L2rib next hop"; } typedef L2rib-bag-producer-state { type enumeration { enum "l2rib-bag-prod-state-initial" { value 0; description "Initial"; } enum "l2rib-bag-prod-state-staled" { value 1; description "Stale"; } enum "l2rib-bag-prod-state-re-connected" { value 2; description "Reconnected"; } enum "l2rib-bag-prod-state-converged" { value 3; description "Converged"; } enum "l2rib-bag-prod-state-delete-p-end" { value 4; description "Delete Pending"; } } description "L2RIB Producer States"; } typedef L2rib-bag-producer-id { type enumeration { enum "l2rib-bag-prod-none" { value 0; description "None"; } enum "l2rib-bag-prod-best-route" { value 1; description "Best Route"; } enum "l2rib-bag-prod-static" { value 2; description "Static"; } enum "l2rib-bag-prod-local" { value 3; description "Local"; } enum "l2rib-bag-prod-isis" { value 4; description "IS IS"; } enum "l2rib-bag-prod-bgp" { value 5; description "BGP"; } enum "l2rib-bag-prod-igmp" { value 6; description "IGMP"; } enum "l2rib-bag-prod-prod-mld" { value 7; description "MLD"; } enum "l2rib-bag-prod-prod-otv" { value 8; description "OTV"; } enum "l2rib-bag-prod-prod-l2vpn" { value 9; description "L2VPN"; } enum "l2rib-bag-prod-prod-mac-mgr" { value 10; description "MAC MGR"; } enum "l2rib-bag-prod-prod-vxlan" { value 11; description "VXLAN"; } enum "l2rib-bag-prod-gateway-local" { value 12; description "GW Local"; } enum "l2rib-bag-prod-prod-arp" { value 13; description "ARP"; } enum "l2rib-bag-prod-prod-local-proxy" { value 14; description "Local Proxy"; } enum "l2rib-bag-prod-prod-all" { value 255; description "All"; } } description "L2RIB Producer Types"; } typedef L2rib-bag-obj { type enumeration { enum "l2rib-bag-obj-type-min" { value 0; description "Invalid Object Type"; } enum "l2rib-bag-obj-type-all" { value 1; description "All"; } enum "l2rib-bag-obj-type-mac" { value 2; description "Mac"; } enum "l2rib-bag-obj-type-ipv4-mcast" { value 3; description "IPv4 Multicast"; } enum "l2rib-bag-obj-type-ipv6-mcast" { value 4; description "IPv6 Multicast"; } enum "l2rib-bag-obj-type-topology" { value 5; description "Topology"; } enum "l2rib-bag-obj-type-ead" { value 6; description "Ethernet AD"; } enum "l2rib-bag-obj-type-evpn-pl" { value 7; description "EVPN Path List"; } enum "l2rib-bag-obj-type-topo-attribute" { value 8; description "Topology Attribute"; } enum "l2rib-bag-obj-type-imet-route" { value 9; description "IMET"; } enum "l2rib-bag-obj-type-mac-ip" { value 13; description "Mac IP"; } } description "L2RIB Object Types"; } grouping L2RIB-IMET-ROUTE-DETAIL { description "L2RIB IMET ROUTE DETAIL"; container imet-route-base { description "Imet Route base information"; uses L2RIB-IMET-ROUTE; } // container imet-route-base leaf tunnel-id { type string; description "Tunnel Id"; } leaf flags { type uint32; description "IMET route flags"; } leaf tunnel-type { type uint32; description "IMET route tunnel type"; } leaf l2r-label { type uint32; description "Label"; } leaf encap-type { type uint32; description "Encap Type"; } leaf last-update-timestamp { type uint64; description "Last Update Timestamp"; } } // grouping L2RIB-IMET-ROUTE-DETAIL grouping L2RIB-MAC-ROUTE-DETAIL { description "Detailed L2RIB MAC Route"; container mac-route { description "MAC Route"; uses L2RIB-MAC-ROUTE; } // container mac-route container rt-tlv { description "Mac Route Opaque Data TLV"; uses L2RIB-TLV; } // container rt-tlv leaf sequence-number { type uint32; description "MAC route sequence Number"; } leaf flags-xr { type xr:Hex-integer; description "MAC route flags"; } leaf baseflags { type xr:Hex-integer; description "BASE flags"; } leaf soo { type uint32; description "SOO"; } leaf slot-id { type uint32; description "Slot ID"; } leaf esi { type string; description "ESI"; } leaf last-update-timestamp { type uint64; description "Last Update Timestamp"; } } // grouping L2RIB-MAC-ROUTE-DETAIL grouping L2RIB-IMET-ROUTE { description "L2RIB IMET ROUTE"; leaf vtepi-paddr { type string; description "Originating Router IP Address"; } leaf producer-id { type uint8; description "Producer of Imet route"; } leaf topo-id { type uint32; description "Topo ID"; } leaf ethernet-tag-id { type uint32; description "Ethernet Tag ID"; } } // grouping L2RIB-IMET-ROUTE grouping L2RIB-MAC-ROUTE-BMAC { description "L2RIB BMAC route"; container path-list { description "Path list information"; uses L2RIB-PATH-LIST; } // container path-list leaf bmac-address { type yang:mac-address; description "BMAC Address"; } leaf forward-state { type boolean; description "Forwarding State. True means forward, False means drop."; } } // grouping L2RIB-MAC-ROUTE-BMAC grouping L2RIB-PATH-LIST-MAC { description "L2RIB PATH LIST MAC"; leaf mac-address { type yang:mac-address; description "MAC Address"; } } // grouping L2RIB-PATH-LIST-MAC grouping L2RIB-PATH-LIST-ESI { description "L2RIB PATH LIST ESI"; container ethernet-segment-id { description "Ethernet Segment Identifier"; uses L2RIB-ESI; } // container ethernet-segment-id leaf resolved { type boolean; description "Path list Resolved"; } list mac-update-next-hop-array { description "Array of Next Hops from MAC Update"; uses L2RIB-NEXT-HOP; } // list mac-update-next-hop-array } // grouping L2RIB-PATH-LIST-ESI grouping L2RIB-PL { description "L2RIB PL"; container path-list-esi { when "../type = 'l2rib-mac-route-type-evpn-esi'" { description "../Type = 'L2RIB_MAC_ROUTE_TYPE_EVPN_ESI'"; } description "ESI Path List"; uses L2RIB-PATH-LIST-ESI; } // container path-list-esi container path-list-mac { when "../type = 'l2rib-mac-route-type-bmac'" { description "../Type = 'L2RIB_MAC_ROUTE_TYPE_BMAC'"; } description "MAC Path List"; uses L2RIB-PATH-LIST-MAC; } // container path-list-mac leaf type { type L2rib-mac-route; description "Type"; } } // grouping L2RIB-PL grouping L2RIB-PATH-LIST { description "L2RIB PATH LIST"; container path-list-info { description "Type-specific Path List info"; uses L2RIB-PL; } // container path-list-info leaf producer-id { type uint8; description "ID of EAD route producer"; } leaf mac-count { type uint32; description "Number of MAC routes bound to this Path list"; } leaf local-label { type uint32; description "Path list local Label"; } list next-hop-array { description "Array of Next Hops for MAC Path List"; uses L2RIB-NEXT-HOP; } // list next-hop-array } // grouping L2RIB-PATH-LIST grouping L2RIB-ESI { description "L2RIB ESI"; leaf system-priority { type uint16; description "LACP System Priority"; } leaf system-id { type yang:mac-address; description "LACP System Id"; } leaf port-key { type uint16; description "LACP Port Key"; } } // grouping L2RIB-ESI grouping L2RIB-MAC-ROUTE-EVPN-ESI { description "L2RIB EVPN ESI MAC route"; container ethernet-segment-id { description "Ethernet Segment Identifier"; uses L2RIB-ESI; } // container ethernet-segment-id container path-list { description "Path list information. Set for detailed MAC route information"; uses L2RIB-PATH-LIST; } // container path-list leaf sequence-number { type uint32; description "MAC route sequence number"; } leaf forward-state { type boolean; description "Forwarding State. True means forward, False means drop."; } } // grouping L2RIB-MAC-ROUTE-EVPN-ESI grouping L2RIB-MAC-ROUTE-REGULAR { description "L2RIB Regular MAC route"; container next-hop { description "Next Hop"; uses L2RIB-NEXT-HOP; } // container next-hop container backup-next-hop { description "Secondary Next Hop"; uses L2RIB-NEXT-HOP; } // container backup-next-hop } // grouping L2RIB-MAC-ROUTE-REGULAR grouping MAC-ROUTE { description "MAC ROUTE"; container regular { when "../type = 'l2rib-mac-route-type-regular'" { description "../Type = 'L2RIB_MAC_ROUTE_TYPE_REGULAR'"; } description "Regular MAC route"; uses L2RIB-MAC-ROUTE-REGULAR; } // container regular container evpn-esi { when "../type = 'l2rib-mac-route-type-evpn-esi'" { description "../Type = 'L2RIB_MAC_ROUTE_TYPE_EVPN_ESI'"; } description "EVPN ESI MAC route"; uses L2RIB-MAC-ROUTE-EVPN-ESI; } // container evpn-esi container bmac { when "../type = 'l2rib-mac-route-type-bmac'" { description "../Type = 'L2RIB_MAC_ROUTE_TYPE_BMAC'"; } description "BMAC route"; uses L2RIB-MAC-ROUTE-BMAC; } // container bmac leaf type { type L2rib-mac-route; description "Type"; } } // grouping MAC-ROUTE grouping L2RIB-MAC-ROUTE { description "L2RIB MAC Route"; container route { description "MAC route"; uses MAC-ROUTE; } // container route leaf mac-address { type yang:mac-address; description "MAC Address"; } leaf admin-distance { type uint8; description "Admin Distance"; } leaf producer-id { type uint8; description "Producer ID"; } leaf topology-id { type uint32; description "Topology ID"; } } // grouping L2RIB-MAC-ROUTE grouping L2RIB-TLV { description "L2RIB Opaque Data TLV"; leaf tlv-type { type uint16; description "TLV Type"; } leaf tlv-len { type uint16; description "TLV Length"; } list tlv-val { description "TLV Value"; leaf entry { type uint8; description "TLV Value"; } } // list tlv-val } // grouping L2RIB-TLV grouping LABELED-NEXT-HOP { description "LABELED NEXT HOP"; leaf address-family { type L2rib-afi; description "L2RIB Address Family"; } leaf ip-address { type string; description "IP Address"; } leaf label { type uint32; description "Label"; } leaf internal { type boolean; description "Internal Label"; } } // grouping LABELED-NEXT-HOP grouping NEXT-HOP { description "NEXT HOP"; container labeled { when "../type = 'l2rib-next-hop-label-ed'" { description "../Type = 'L2RIB_NEXT_HOP_LABELED'"; } description "Labeled Next Hop"; uses LABELED-NEXT-HOP; } // container labeled leaf type { type L2rib-next-hop; description "Type"; } leaf ipv4 { when "../type = 'l2rib-next-hop-ipv4'" { description "../Type = 'L2RIB_NEXT_HOP_IPV4'"; } type inet:ipv4-address; description "IPV4 address Next Hop"; } leaf ipv6 { when "../type = 'l2rib-next-hop-ipv6'" { description "../Type = 'L2RIB_NEXT_HOP_IPV6'"; } type L2rib-ipv6-addr; description "IPV6 address Next Hop"; } leaf mac { when "../type = 'l2rib-next-hop-mac'" { description "../Type = 'L2RIB_NEXT_HOP_MAC'"; } type L2rib-mac-addr; description "MAC address Next Hop"; } leaf interface-handle { when "../type = 'l2rib-next-hop-interface-index'" { description "../Type = 'L2RIB_NEXT_HOP_INTERFACE_INDEX'"; } type xr:Interface-name; description "Intefrace Handle Next Hop"; } leaf xid { when "../type = 'l2rib-next-hop-xid'" { description "../Type = 'L2RIB_NEXT_HOP_XID'"; } type uint32; description "XID Next Hop"; } } // grouping NEXT-HOP grouping L2RIB-NEXT-HOP { description "L2RIB NEXT HOP"; container next-hop { description "Next hop"; uses NEXT-HOP; } // container next-hop leaf topology-id { type uint32; description "Next-hop TOPOLOGY ID"; } leaf flags { type uint16; description "Next-hop flags"; } } // grouping L2RIB-NEXT-HOP grouping L2RIB-MAC-IP-ROUTE { description "L2RIB MAC-IP Route"; container next-hop { description "Next Hop"; uses L2RIB-NEXT-HOP; } // container next-hop container backup-next-hop { description "Secondary Next Hop"; uses L2RIB-NEXT-HOP; } // container backup-next-hop leaf mac-address { type yang:mac-address; description "MAC Address"; } leaf ip-address { type string; description "IP Address"; } leaf admin-distance { type uint8; description "Admin Distance"; } leaf producer-id { type uint8; description "Producer ID"; } leaf topology-id { type uint32; description "Topology ID"; } } // grouping L2RIB-MAC-IP-ROUTE grouping L2RIB-MAC-IP-ROUTE-DETAIL { description "Detailed L2RIB MAC-IP Route"; container mac-ip-route { description "MAC-IP Route"; uses L2RIB-MAC-IP-ROUTE; } // container mac-ip-route container rt-tlv { description "Mac-IP Route Opaque Data TLV"; uses L2RIB-TLV; } // container rt-tlv container nh-tlv { description "Mac-IP Route Opaque NH TLV"; uses L2RIB-TLV; } // container nh-tlv leaf sequence-number { type uint32; description "MAC-IP route sequence Number"; } leaf flags-xr { type xr:Hex-integer; description "MAC-IP route flags"; } leaf soo { type uint32; description "SOO"; } leaf last-update-timestamp { type uint64; description "Last Update Timestamp"; } } // grouping L2RIB-MAC-IP-ROUTE-DETAIL grouping L2RIB-PROD-INFO { description "L2RIB PROD INFO"; leaf object-type { type L2rib-bag-obj; description "Object Type"; } leaf producer-id { type L2rib-bag-producer-id; description "Producer ID"; } leaf producer-name { type string; description "Producer Name"; } leaf admin-distance { type uint32; description "Admin Distance"; } leaf purge-time { type uint32; description "Purge Time"; } } // grouping L2RIB-PROD-INFO grouping L2RIB-CLIENT-DETAIL { description "L2RIB CLIENT DETAIL"; container client { description "Non-detail Client bag"; uses L2RIB-CLIENT; } // container client container registration-table-statistics { description "Registration table statistics"; uses L2RIB-PROD-STATS; } // container registration-table-statistics leaf producer-count { type uint8; description "Number of Producers"; } leaf last-update-timestamp { type uint64; description "Last Update Timestamp"; } list producer-array { description "List of Producers"; uses L2RIB-PROD-INFO; } // list producer-array } // grouping L2RIB-CLIENT-DETAIL grouping L2RIB-TOPOLOGY { description "L2RIB TOPOLOGY"; leaf topology-id { type uint32; description "Topology ID"; } leaf topology-name { type string; description "Topology Name"; } leaf topology-type { type uint32; description "Topology Type"; } } // grouping L2RIB-TOPOLOGY grouping L2RIB-TOPOLOGY-DETAIL { description "L2RIB TOPOLOGY DETAIL"; container topology { description "Topology"; uses L2RIB-TOPOLOGY; } // container topology leaf l2r-vni { type uint32; description "l2r vni"; } leaf l2r-encap-type { type uint16; description "l2r encap type"; } leaf l2r-nve-iod { type uint32; description "l2r nve iod"; } leaf l2r-nve-ifhandle { type uint32; description "l2r nve ifhandle"; } leaf vtep-ip { type string; description "VTEP IP"; } leaf l2r-topo-txid { type uint32; description "l2r topo txid"; } leaf l2r-topo-flags { type uint32; description "Topology Flags"; } leaf l2r-subtype { type uint8; description "Topology Subtype"; } leaf pad1 { type yang:hex-string; description "pad1"; } } // grouping L2RIB-TOPOLOGY-DETAIL grouping L2RIB-CLIENT { description "L2RIB CLIENT"; leaf client-id-xr { type uint32; description "Client ID"; } leaf process-id { type uint32; description "Process ID"; } leaf node-id { type xr:Node-id; description "Node ID"; } leaf proc-name { type string; description "Process Name"; } leaf proc-suffix { type string; description "Process Suffix"; } } // grouping L2RIB-CLIENT grouping L2RIB-DD-PARAMS { description "L2RIB DD PARAMS"; leaf dd-params-disable { type boolean; description "Disable duplicate detection for MAC, IPv4 or IPv6 addresses."; } leaf dd-params-infinite-retry-count { type boolean; description "Disable permanent freezing for MAC, IPv4 or IPv6 addresses with infinite retry-count."; } leaf dd-params-freeze-time { type uint16; description "Length of time to freeze the mac after it has been detected as duplicate. Default is 30s."; } leaf dd-params-retry-count { type uint16; description "Number of times to unfreeze a MAC before permanently freezing it. Default is 3 times."; } leaf dd-params-reset-freeze-count-interval { type uint16; units "hour"; description "Interval after which the count of duplicate detection events used to determine whether MAC or IP needs to be permanently frozen, is reset. Default is 24 hours."; } leaf dd-params-move-count { type uint32; units "second"; description "Number of moves to occur in move-interval seconds before freezing the MAC. Default is 5s."; } leaf dd-params-move-interval { type uint32; description "Interval to watch for subsequent moves before freezing the MAC. Default is 180s."; } } // grouping L2RIB-DD-PARAMS grouping L2RIB-TBL-SUMMARY { description "L2RIB TBL SUMMARY"; leaf object-type { type L2rib-bag-obj; description "Object Type"; } leaf object-count { type uint32; description "Number of Objects"; } leaf table-memory { type uint32; description "Allocated Memory"; } list producer-stat { description "Statistics per producer"; uses L2RIB-PROD-STATS; } // list producer-stat } // grouping L2RIB-TBL-SUMMARY grouping L2RIB-SUMMARY { description "L2RIB SUMMARY"; container mac-dd-params { description "MAC duplicate detection parameters"; uses L2RIB-DD-PARAMS; } // container mac-dd-params container ipv4-dd-params { description "IPv4 duplicate detection parameters"; uses L2RIB-DD-PARAMS; } // container ipv4-dd-params container ipv6-dd-params { description "IPv6 duplicate detection parameters"; uses L2RIB-DD-PARAMS; } // container ipv6-dd-params leaf converged-tables-count { type uint32; description "Number of Converged Tables"; } leaf total-memory { type uint32; description "Total Allocated Memory"; } list table-summary { description "Per Object Table summary"; uses L2RIB-TBL-SUMMARY; } // list table-summary } // grouping L2RIB-SUMMARY grouping L2RIB-BAG-EC { description "L2RIB BAG EC"; leaf counter-type { type uint8; description "CounterType"; } leaf counter-name { type string; description "CounterName"; } leaf l2rb-first-event-ts { type uint64; description "Real-clock timestamp in msec of first event"; } leaf l2rb-last-event-ts { type uint64; description "Real-clock timestamp in msec of last event"; } leaf l2rb-interval-event-count { type uint32; description "number of events in interval"; } leaf l2rb-total-event-count { type uint32; description "total number of events"; } } // grouping L2RIB-BAG-EC grouping L2RIB-PROD-UPDATE-STATS { description "L2RIB PROD UPDATE STATS"; leaf memory-size { type uint32; description "Memory Size"; } leaf object-count { type uint32; description "Number of Objects"; } leaf endof-interval-ts { type uint64; description "End of Interval Timestamp"; } list extended-counter { description "Extended Counters"; uses L2RIB-BAG-EC; } // list extended-counter } // grouping L2RIB-PROD-UPDATE-STATS grouping L2RIB-PROD-STATS { description "L2RIB PROD STATS"; container statistics { description "Statistics"; uses L2RIB-PROD-UPDATE-STATS; } // container statistics leaf producer-id { type L2rib-bag-producer-id; description "Producer ID"; } leaf producer-name { type string; description "Producer Name"; } } // grouping L2RIB-PROD-STATS grouping L2RIB-PROD { description "L2RIB PROD"; leaf client-id { type uint32; description "Client ID"; } leaf object-type { type L2rib-bag-obj; description "Object Type"; } leaf producer-id { type L2rib-bag-producer-id; description "Producer ID"; } leaf producer-name { type string; description "Producer Name"; } leaf admin-distance { type uint32; description "Admin Distance"; } leaf purge-time { type uint32; description "Purge Time"; } leaf state { type L2rib-bag-producer-state; description "Producer State"; } } // grouping L2RIB-PROD grouping L2RIB-PROD-DETAIL { description "L2RIB PROD DETAIL"; container producer { description "Non-detail Producer Bag"; uses L2RIB-PROD; } // container producer container statistics { description "Producer Statistics"; uses L2RIB-PROD-STATS; } // container statistics leaf last-update-timestamp { type uint64; description "Last Update Timestamp"; } } // grouping L2RIB-PROD-DETAIL } // submodule Cisco-IOS-XR-l2rib-oper-sub1
© 2023 YumaWorks, Inc. All rights reserved.